home *** CD-ROM | disk | FTP | other *** search
/ Macwelt 2 / Macwelt DVD 2.cdr / System / Entwickler-Tools / macos9 / Future Basic 3 6.0.3 / Subs Containers.Incl < prev    next >
MacBinary  |  2002-03-15  |  17.3 KB  |  [TEXT/FB^e]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
1% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Fri Mar 15 08:23:36 2002, modified Fri Mar 15 08:23:36 2002, creator 'FB^e', type ASCII, 17147 bytes "Subs Containers.Incl" , at 0x437b 371 bytes resource default (weak)
99% file data default
49% TrID Macintosh plain text (MacBinary) default
33% TrID raw Group 3 FAX bitmap default (weak)
16% TrID MacBinary 2 default (weak)
100% dearkID deark: macbinary default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[FB^e]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 14 53 75 62 73 20 43 | 6f 6e 74 61 69 6e 65 72 |..Subs C|ontainer|
|00000010| 73 2e 49 6e 63 6c 00 00 | 00 00 00 00 00 00 00 00 |s.Incl..|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 46 42 5e | 65 01 00 00 2d 00 06 00 |.TEXTFB^|e...-...|
|00000050| 00 00 00 00 00 42 fb 00 | 00 01 73 b8 b7 a6 58 b8 |.....B..|..s...X.|
|00000060| b7 a6 58 00 00 0e 00 00 | 00 00 00 00 00 00 00 00 |..X.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 cc 88 00 00 |........|........|
|00000080| 2f 2a 20 0d 20 20 20 20 | 20 54 68 69 73 20 66 69 |/* . | This fi|
|00000090| 6c 65 20 63 6f 6e 74 61 | 69 6e 73 20 74 68 65 20 |le conta|ins the |
|000000a0| 63 6f 64 65 20 74 68 61 | 74 20 69 73 20 75 73 65 |code tha|t is use|
|000000b0| 64 20 74 6f 0d 20 20 20 | 20 20 77 6f 72 6b 20 77 |d to. | work w|
|000000c0| 69 74 68 20 63 6f 6e 74 | 61 69 6e 65 72 73 2e 20 |ith cont|ainers. |
|000000d0| 43 6f 6e 74 61 69 6e 65 | 72 73 20 61 72 65 20 62 |Containe|rs are b|
|000000e0| 6c 6f 63 6b 73 20 6f 66 | 0d 20 20 20 20 20 64 61 |locks of|. da|
|000000f0| 74 61 20 75 70 20 74 6f | 20 32 20 67 69 67 20 69 |ta up to| 2 gig i|
|00000100| 6e 20 73 69 7a 65 2e 0d | 2a 2f 20 0d 6c 6f 63 61 |n size..|*/ .loca|
|00000110| 6c 20 66 6e 20 46 42 43 | 74 6e 72 43 68 65 63 6b |l fn FBC|tnrCheck|
|00000120| 4d 65 6d 45 72 72 28 65 | 72 72 2c 40 6d 73 67 50 |MemErr(e|rr,@msgP|
|00000130| 74 72 26 29 0d 6c 6f 6e | 67 20 69 66 20 65 72 72 |tr&).lon|g if err|
|00000140| 20 6f 72 20 66 6e 20 6d | 65 6d 65 72 72 6f 72 0d | or fn m|emerror.|
|00000150| 73 68 75 74 64 6f 77 6e | 20 22 43 6f 6e 74 61 69 |shutdown| "Contai|
|00000160| 6e 65 72 3a 20 4f 75 74 | 20 6f 66 20 6d 65 6d 6f |ner: Out| of memo|
|00000170| 72 79 20 22 2b 6d 73 67 | 50 74 72 26 2e 6e 69 6c |ry "+msg|Ptr&.nil|
|00000180| 24 2b 22 2e 22 0d 78 65 | 6c 73 65 0d 6c 6f 6e 67 |$+".".xe|lse.long|
|00000190| 20 69 66 20 66 6e 20 66 | 72 65 65 6d 65 6d 20 3c | if fn f|reemem <|
|000001a0| 20 31 36 33 38 34 0d 73 | 68 75 74 64 6f 77 6e 20 | 16384.s|hutdown |
|000001b0| 22 43 6f 6e 74 61 69 6e | 65 72 3a 20 4c 6f 77 20 |"Contain|er: Low |
|000001c0| 4d 65 6d 6f 72 79 20 22 | 2b 6d 73 67 50 74 72 26 |Memory "|+msgPtr&|
|000001d0| 2e 6e 69 6c 24 2b 22 2e | 22 0d 65 6e 64 20 69 66 |.nil$+".|".end if|
|000001e0| 0d 65 6e 64 20 69 66 0d | 65 6e 64 20 66 6e 0d 2f |.end if.|end fn./|
|000001f0| 2a 0d 0d 2a 2f 0d 6c 6f | 63 61 6c 0d 64 69 6d 20 |*..*/.lo|cal.dim |
|00000200| 6e 65 77 48 6e 64 6c 26 | 0d 6c 6f 63 61 6c 20 66 |newHndl&|.local f|
|00000210| 6e 20 46 42 4e 65 77 43 | 6f 6e 74 61 69 6e 65 72 |n FBNewC|ontainer|
|00000220| 28 6c 65 6e 67 74 68 26 | 29 0d 6e 65 77 48 6e 64 |(length&|).newHnd|
|00000230| 6c 26 20 3d 20 66 6e 20 | 6e 65 77 68 61 6e 64 6c |l& = fn |newhandl|
|00000240| 65 28 6c 65 6e 67 74 68 | 26 29 0d 66 6e 20 46 42 |e(length|&).fn FB|
|00000250| 43 74 6e 72 43 68 65 63 | 6b 4d 65 6d 45 72 72 28 |CtnrChec|kMemErr(|
|00000260| 30 2c 22 43 72 65 61 74 | 69 6e 67 20 22 2b 73 74 |0,"Creat|ing "+st|
|00000270| 72 24 28 6c 65 6e 67 74 | 68 26 29 2b 22 20 62 79 |r$(lengt|h&)+" by|
|00000280| 74 65 73 22 29 0d 65 6e | 64 20 66 6e 20 3d 20 6e |tes").en|d fn = n|
|00000290| 65 77 48 6e 64 6c 26 0d | 2f 2a 0d 20 20 20 20 20 |ewHndl&.|/*. |
|000002a0| 4d 6f 76 65 20 63 6f 6e | 74 65 6e 74 73 20 6f 66 |Move con|tents of|
|000002b0| 20 63 6f 6e 74 61 69 6e | 65 72 20 69 6e 74 6f 20 | contain|er into |
|000002c0| 73 74 72 69 6e 67 0d 2a | 2f 0d 6c 6f 63 61 6c 0d |string.*|/.local.|
|000002d0| 64 69 6d 20 6c 67 74 68 | 26 0d 6c 6f 63 61 6c 20 |dim lgth|&.local |
|000002e0| 66 6e 20 67 65 74 43 74 | 6e 72 53 74 72 69 6e 67 |fn getCt|nrString|
|000002f0| 28 63 74 6e 72 48 26 2c | 40 73 50 74 72 26 29 0d |(ctnrH&,|@sPtr&).|
|00000300| 6c 6f 6e 67 20 69 66 20 | 63 74 6e 72 48 26 0d 6c |long if |ctnrH&.l|
|00000310| 67 74 68 26 20 3d 20 66 | 6e 20 67 65 74 68 61 6e |gth& = f|n gethan|
|00000320| 64 6c 65 73 69 7a 65 28 | 63 74 6e 72 48 26 29 0d |dlesize(|ctnrH&).|
|00000330| 69 66 20 6c 67 74 68 26 | 20 3e 20 32 35 35 20 74 |if lgth&| > 255 t|
|00000340| 68 65 6e 20 6c 67 74 68 | 26 20 3d 20 32 35 35 2f |hen lgth|& = 255/|
|00000350| 2f 20 50 61 73 63 61 6c | 20 2f 20 46 42 20 53 74 |/ Pascal| / FB St|
|00000360| 72 69 6e 67 20 4c 69 6d | 69 74 0d 62 6c 6f 63 6b |ring Lim|it.block|
|00000370| 6d 6f 76 65 20 5b 63 74 | 6e 72 48 26 5d 2c 73 50 |move [ct|nrH&],sP|
|00000380| 74 72 26 2b 31 2c 6c 67 | 74 68 26 0d 78 65 6c 73 |tr&+1,lg|th&.xels|
|00000390| 65 0d 6c 67 74 68 26 20 | 3d 20 30 2f 2f 20 4e 69 |e.lgth& |= 0// Ni|
|000003a0| 6c 0d 65 6e 64 20 69 66 | 0d 7c 20 73 50 74 72 26 |l.end if|.| sPtr&|
|000003b0| 2c 6c 67 74 68 26 2f 2f | 20 53 65 74 20 4c 65 6e |,lgth&//| Set Len|
|000003c0| 67 74 68 20 42 79 74 65 | 0d 65 6e 64 20 66 6e 0d |gth Byte|.end fn.|
|000003d0| 2f 2a 0d 20 20 20 20 20 | 43 72 65 61 74 65 20 6f |/*. |Create o|
|000003e0| 72 20 72 65 73 69 7a 65 | 20 63 6f 6e 74 61 69 6e |r resize| contain|
|000003f0| 65 72 0d 2a 2f 0d 6c 6f | 63 61 6c 0d 64 69 6d 20 |er.*/.lo|cal.dim |
|00000400| 63 74 6e 72 48 26 2c 65 | 72 72 26 0d 6c 6f 63 61 |ctnrH&,e|rr&.loca|
|00000410| 6c 20 66 6e 20 62 75 69 | 6c 64 43 6f 6e 74 61 69 |l fn bui|ldContai|
|00000420| 6e 65 72 28 63 74 6e 72 | 56 61 72 50 74 72 26 2c |ner(ctnr|VarPtr&,|
|00000430| 73 69 7a 65 26 29 0d 63 | 74 6e 72 48 26 20 3d 20 |size&).c|tnrH& = |
|00000440| 63 74 6e 72 56 61 72 50 | 74 72 26 2e 6e 69 6c 26 |ctnrVarP|tr&.nil&|
|00000450| 0d 6c 6f 6e 67 20 69 66 | 20 63 74 6e 72 48 26 0d |.long if| ctnrH&.|
|00000460| 6c 6f 6e 67 20 69 66 20 | 73 69 7a 65 26 0d 73 65 |long if |size&.se|
|00000470| 74 68 61 6e 64 6c 65 73 | 69 7a 65 28 63 74 6e 72 |thandles|ize(ctnr|
|00000480| 48 26 2c 73 69 7a 65 26 | 29 0d 66 6e 20 46 42 43 |H&,size&|).fn FBC|
|00000490| 74 6e 72 43 68 65 63 6b | 4d 65 6d 45 72 72 28 30 |tnrCheck|MemErr(0|
|000004a0| 2c 22 53 69 7a 69 6e 67 | 22 29 0d 78 65 6c 73 65 |,"Sizing|").xelse|
|000004b0| 0d 44 69 73 70 6f 73 65 | 48 61 6e 64 6c 65 28 63 |.Dispose|Handle(c|
|000004c0| 74 6e 72 48 26 29 0d 66 | 6e 20 46 42 43 74 6e 72 |tnrH&).f|n FBCtnr|
|000004d0| 43 68 65 63 6b 4d 65 6d | 45 72 72 28 30 2c 22 44 |CheckMem|Err(0,"D|
|000004e0| 69 73 70 6f 73 69 6e 67 | 22 29 0d 63 74 6e 72 48 |isposing|").ctnrH|
|000004f0| 26 20 3d 20 30 0d 65 6e | 64 20 69 66 0d 78 65 6c |& = 0.en|d if.xel|
|00000500| 73 65 0d 6c 6f 6e 67 20 | 69 66 20 73 69 7a 65 26 |se.long |if size&|
|00000510| 0d 63 74 6e 72 48 26 20 | 3d 20 66 6e 20 46 42 4e |.ctnrH& |= fn FBN|
|00000520| 65 77 43 6f 6e 74 61 69 | 6e 65 72 28 73 69 7a 65 |ewContai|ner(size|
|00000530| 26 29 0d 65 6e 64 20 69 | 66 0d 65 6e 64 20 69 66 |&).end i|f.end if|
|00000540| 0d 63 74 6e 72 56 61 72 | 50 74 72 26 2e 6e 69 6c |.ctnrVar|Ptr&.nil|
|00000550| 26 20 3d 20 63 74 6e 72 | 48 26 0d 65 6e 64 20 66 |& = ctnr|H&.end f|
|00000560| 6e 20 3d 20 63 74 6e 72 | 48 26 0d 2f 2a 0d 20 20 |n = ctnr|H&./*. |
|00000570| 20 20 20 4d 6f 76 65 20 | 69 6e 66 6f 20 66 72 6f | Move |info fro|
|00000580| 6d 20 73 74 72 69 6e 67 | 20 69 6e 74 6f 20 63 6f |m string| into co|
|00000590| 6e 74 61 69 6e 65 72 0d | 2a 2f 0d 6c 6f 63 61 6c |ntainer.|*/.local|
|000005a0| 0d 64 69 6d 20 63 74 6e | 72 48 26 2c 6c 67 74 68 |.dim ctn|rH&,lgth|
|000005b0| 26 0d 6c 6f 63 61 6c 20 | 66 6e 20 70 75 74 43 74 |&.local |fn putCt|
|000005c0| 6e 72 53 74 72 69 6e 67 | 28 63 74 6e 72 56 61 72 |nrString|(ctnrVar|
|000005d0| 50 74 72 26 2c 40 73 50 | 74 72 26 29 0d 6c 67 74 |Ptr&,@sP|tr&).lgt|
|000005e0| 68 26 20 20 3d 20 7c 73 | 50 74 72 26 7c 0d 63 74 |h& = |s|Ptr&|.ct|
|000005f0| 6e 72 48 26 20 3d 20 66 | 6e 20 62 75 69 6c 64 43 |nrH& = f|n buildC|
|00000600| 6f 6e 74 61 69 6e 65 72 | 28 63 74 6e 72 56 61 72 |ontainer|(ctnrVar|
|00000610| 50 74 72 26 2c 6c 67 74 | 68 26 29 0d 69 66 20 63 |Ptr&,lgt|h&).if c|
|00000620| 74 6e 72 48 26 20 74 68 | 65 6e 20 62 6c 6f 63 6b |tnrH& th|en block|
|00000630| 6d 6f 76 65 20 73 50 74 | 72 26 2b 31 2c 5b 63 74 |move sPt|r&+1,[ct|
|00000640| 6e 72 48 26 5d 2c 6c 67 | 74 68 26 0d 65 6e 64 20 |nrH&],lg|th&.end |
|00000650| 66 6e 20 3d 20 63 74 6e | 72 48 26 0d 2f 2a 0d 20 |fn = ctn|rH&./*. |
|00000660| 20 20 20 20 53 74 6f 72 | 65 20 73 74 72 69 6e 67 | Stor|e string|
|00000670| 20 69 6e 20 63 6f 6e 74 | 61 69 6e 65 72 0d 2a 2f | in cont|ainer.*/|
|00000680| 0d 6c 6f 63 61 6c 20 0d | 64 69 6d 20 74 24 2c 6c |.local .|dim t$,l|
|00000690| 67 74 68 26 2c 63 74 6e | 72 48 26 0d 72 75 6e 74 |gth&,ctn|rH&.runt|
|000006a0| 69 6d 65 20 43 54 4e 52 | 53 54 4f 52 45 53 54 52 |ime CTNR|STORESTR|
|000006b0| 49 4e 47 28 63 74 6e 72 | 56 61 72 50 74 72 26 29 |ING(ctnr|VarPtr&)|
|000006c0| 0d 74 24 20 20 20 20 20 | 3d 20 67 46 42 53 74 72 |.t$ |= gFBStr|
|000006d0| 26 2e 46 42 53 74 72 41 | 63 63 24 0d 6c 67 74 68 |&.FBStrA|cc$.lgth|
|000006e0| 26 20 20 3d 20 74 24 5b | 30 5d 0d 63 74 6e 72 48 |& = t$[|0].ctnrH|
|000006f0| 26 20 3d 20 66 6e 20 62 | 75 69 6c 64 43 6f 6e 74 |& = fn b|uildCont|
|00000700| 61 69 6e 65 72 28 63 74 | 6e 72 56 61 72 50 74 72 |ainer(ct|nrVarPtr|
|00000710| 26 2c 6c 67 74 68 26 29 | 0d 69 66 20 63 74 6e 72 |&,lgth&)|.if ctnr|
|00000720| 48 26 20 74 68 65 6e 20 | 62 6c 6f 63 6b 6d 6f 76 |H& then |blockmov|
|00000730| 65 20 40 74 24 5b 31 5d | 2c 5b 63 74 6e 72 48 26 |e @t$[1]|,[ctnrH&|
|00000740| 5d 2c 6c 67 74 68 26 0d | 65 6e 64 20 66 6e 20 3d |],lgth&.|end fn =|
|00000750| 20 63 74 6e 72 48 26 0d | 2f 2a 0d 20 20 20 20 20 | ctnrH&.|/*. |
|00000760| 4d 6f 76 65 20 73 74 72 | 69 6e 67 20 66 72 6f 6d |Move str|ing from|
|00000770| 20 63 6f 6e 74 61 69 6e | 65 72 20 74 6f 20 73 74 | contain|er to st|
|00000780| 72 69 6e 67 20 61 63 63 | 75 6d 75 6c 61 74 6f 72 |ring acc|umulator|
|00000790| 0d 2a 2f 0d 72 75 6e 74 | 69 6d 65 20 43 54 4e 52 |.*/.runt|ime CTNR|
|000007a0| 4c 4f 41 44 53 54 52 49 | 4e 47 28 63 74 6e 72 56 |LOADSTRI|NG(ctnrV|
|000007b0| 61 72 50 74 72 26 29 0d | 66 6e 20 67 65 74 43 74 |arPtr&).|fn getCt|
|000007c0| 6e 72 53 74 72 69 6e 67 | 28 63 74 6e 72 56 61 72 |nrString|(ctnrVar|
|000007d0| 50 74 72 26 2e 6e 69 6c | 26 2c 67 46 42 53 74 72 |Ptr&.nil|&,gFBStr|
|000007e0| 26 2e 46 42 53 74 72 41 | 63 63 24 29 0d 65 6e 64 |&.FBStrA|cc$).end|
|000007f0| 20 66 6e 20 3d 20 67 46 | 42 53 74 72 26 0d 2f 2a | fn = gF|BStr&./*|
|00000800| 0d 20 20 20 20 20 53 74 | 6f 72 65 20 61 6e 20 69 |. St|ore an i|
|00000810| 6e 74 20 28 61 73 20 61 | 73 63 69 69 20 74 65 78 |nt (as a|scii tex|
|00000820| 74 29 20 69 6e 20 61 20 | 63 6f 6e 74 61 69 6e 65 |t) in a |containe|
|00000830| 72 0d 2a 2f 0d 6c 6f 63 | 61 6c 0d 64 69 6d 20 63 |r.*/.loc|al.dim c|
|00000840| 74 6e 72 48 26 2c 74 24 | 0d 72 75 6e 74 69 6d 65 |tnrH&,t$|.runtime|
|00000850| 20 43 54 4e 52 53 54 4f | 52 45 49 4e 54 45 47 45 | CTNRSTO|REINTEGE|
|00000860| 52 28 69 6e 74 50 61 72 | 61 6d 26 2c 63 74 6e 72 |R(intPar|am&,ctnr|
|00000870| 56 61 72 50 74 72 26 29 | 0d 74 24 20 3d 20 73 74 |VarPtr&)|.t$ = st|
|00000880| 72 24 28 69 6e 74 50 61 | 72 61 6d 26 29 27 63 6f |r$(intPa|ram&)'co|
|00000890| 6e 76 65 72 74 20 69 6e | 74 20 74 6f 20 73 74 72 |nvert in|t to str|
|000008a0| 69 6e 67 0d 63 74 6e 72 | 48 26 20 3d 20 66 6e 20 |ing.ctnr|H& = fn |
|000008b0| 62 75 69 6c 64 43 6f 6e | 74 61 69 6e 65 72 28 63 |buildCon|tainer(c|
|000008c0| 74 6e 72 56 61 72 50 74 | 72 26 2c 74 24 5b 30 5d |tnrVarPt|r&,t$[0]|
|000008d0| 29 0d 65 6e 64 20 66 6e | 20 3d 20 66 6e 20 70 75 |).end fn| = fn pu|
|000008e0| 74 43 74 6e 72 53 74 72 | 69 6e 67 28 63 74 6e 72 |tCtnrStr|ing(ctnr|
|000008f0| 56 61 72 50 74 72 26 2c | 74 24 29 0d 2f 2a 0d 20 |VarPtr&,|t$)./*. |
|00000900| 20 20 20 20 47 65 74 20 | 63 6f 6e 74 65 6e 74 73 | Get |contents|
|00000910| 20 6f 66 20 63 6f 6e 74 | 61 69 6e 65 72 20 61 6e | of cont|ainer an|
|00000920| 64 20 72 65 74 75 72 6e | 20 61 73 20 69 6e 74 0d |d return| as int.|
|00000930| 2a 2f 0d 6c 6f 63 61 6c | 0d 64 69 6d 20 74 24 0d |*/.local|.dim t$.|
|00000940| 72 75 6e 74 69 6d 65 20 | 43 54 4e 52 4c 4f 41 44 |runtime |CTNRLOAD|
|00000950| 49 4e 54 45 47 45 52 28 | 63 74 6e 72 56 61 72 50 |INTEGER(|ctnrVarP|
|00000960| 74 72 26 29 0d 66 6e 20 | 67 65 74 43 74 6e 72 53 |tr&).fn |getCtnrS|
|00000970| 74 72 69 6e 67 28 63 74 | 6e 72 56 61 72 50 74 72 |tring(ct|nrVarPtr|
|00000980| 26 2e 6e 69 6c 26 2c 74 | 24 29 0d 65 6e 64 20 66 |&.nil&,t|$).end f|
|00000990| 6e 20 3d 20 76 61 6c 28 | 74 24 29 0d 2f 2a 0d 20 |n = val(|t$)./*. |
|000009a0| 20 20 20 20 50 75 74 20 | 66 6c 6f 61 74 20 69 6e | Put |float in|
|000009b0| 74 6f 20 63 6f 6e 74 61 | 69 6e 65 72 0d 2a 2f 0d |to conta|iner.*/.|
|000009c0| 6c 6f 63 61 6c 0d 64 69 | 6d 20 74 24 0d 72 75 6e |local.di|m t$.run|
|000009d0| 74 69 6d 65 20 43 54 4e | 52 53 54 4f 52 45 46 4c |time CTN|RSTOREFL|
|000009e0| 4f 41 54 28 63 74 6e 72 | 56 61 72 50 74 72 26 29 |OAT(ctnr|VarPtr&)|
|000009f0| 0d 74 24 20 3d 20 73 74 | 72 24 28 46 6c 6f 61 74 |.t$ = st|r$(Float|
|00000a00| 41 63 63 29 27 63 6f 6e | 76 65 72 74 20 66 6c 6f |Acc)'con|vert flo|
|00000a10| 61 74 20 61 63 63 75 6d | 20 74 6f 20 73 74 72 69 |at accum| to stri|
|00000a20| 6e 67 0d 65 6e 64 20 66 | 6e 20 3d 20 66 6e 20 70 |ng.end f|n = fn p|
|00000a30| 75 74 43 74 6e 72 53 74 | 72 69 6e 67 28 63 74 6e |utCtnrSt|ring(ctn|
|00000a40| 72 56 61 72 50 74 72 26 | 2c 74 24 29 0d 2f 2a 0d |rVarPtr&|,t$)./*.|
|00000a50| 20 20 20 20 20 50 75 74 | 20 63 6f 6e 74 61 69 6e | Put| contain|
|00000a60| 65 72 20 69 6e 74 6f 20 | 66 6c 6f 61 74 69 6e 67 |er into |floating|
|00000a70| 20 70 6f 69 6e 74 20 76 | 61 72 69 61 62 6c 65 0d | point v|ariable.|
|00000a80| 2a 2f 0d 6c 6f 63 61 6c | 0d 64 69 6d 20 74 24 0d |*/.local|.dim t$.|
|00000a90| 72 75 6e 74 69 6d 65 20 | 43 54 4e 52 4c 4f 41 44 |runtime |CTNRLOAD|
|00000aa0| 46 4c 4f 41 54 28 63 74 | 6e 72 56 61 72 50 74 72 |FLOAT(ct|nrVarPtr|
|00000ab0| 26 29 0d 66 6e 20 67 65 | 74 43 74 6e 72 53 74 72 |&).fn ge|tCtnrStr|
|00000ac0| 69 6e 67 28 63 74 6e 72 | 56 61 72 50 74 72 26 2e |ing(ctnr|VarPtr&.|
|00000ad0| 6e 69 6c 26 2c 74 24 29 | 0d 46 6c 6f 61 74 41 63 |nil&,t$)|.FloatAc|
|00000ae0| 63 20 3d 20 76 61 6c 28 | 74 24 29 0d 65 6e 64 20 |c = val(|t$).end |
|00000af0| 66 6e 0d 2f 2a 0d 20 20 | 20 20 4c 45 4e 28 43 6f |fn./*. | LEN(Co|
|00000b00| 6e 74 61 69 6e 65 72 29 | 0d 2a 2f 0d 6c 6f 63 61 |ntainer)|.*/.loca|
|00000b10| 6c 27 4d 6f 64 69 66 69 | 65 64 20 7b 20 34 2f 31 |l'Modifi|ed { 4/1|
|00000b20| 34 2f 30 30 20 7d 20 41 | 2e 47 2e 0d 64 69 6d 20 |4/00 } A|.G..dim |
|00000b30| 74 68 65 4c 65 6e 67 74 | 68 26 0d 72 75 6e 74 69 |theLengt|h&.runti|
|00000b40| 6d 65 20 6c 65 6e 5f 63 | 74 6e 72 28 43 74 6e 72 |me len_c|tnr(Ctnr|
|00000b50| 50 74 72 26 29 0d 74 68 | 65 4c 65 6e 67 74 68 26 |Ptr&).th|eLength&|
|00000b60| 20 3d 20 30 0d 6c 6f 6e | 67 20 69 66 20 43 74 6e | = 0.lon|g if Ctn|
|00000b70| 72 50 74 72 26 2e 6e 69 | 6c 26 0d 74 68 65 4c 65 |rPtr&.ni|l&.theLe|
|00000b80| 6e 67 74 68 26 20 3d 20 | 66 6e 20 67 65 74 68 61 |ngth& = |fn getha|
|00000b90| 6e 64 6c 65 73 69 7a 65 | 28 43 74 6e 72 50 74 72 |ndlesize|(CtnrPtr|
|00000ba0| 26 2e 6e 69 6c 26 29 0d | 65 6e 64 20 69 66 0d 65 |&.nil&).|end if.e|
|00000bb0| 6e 64 20 66 6e 20 3d 20 | 74 68 65 4c 65 6e 67 74 |nd fn = |theLengt|
|00000bc0| 68 26 27 4d 6f 64 69 66 | 69 65 64 20 7b 20 34 2f |h&'Modif|ied { 4/|
|00000bd0| 31 34 2f 30 30 20 7d 20 | 41 2e 47 2e 0d 2f 2a 0d |14/00 } |A.G../*.|
|00000be0| 20 20 20 20 41 53 43 28 | 43 6f 6e 74 61 69 6e 65 | ASC(|Containe|
|00000bf0| 72 29 0d 2a 2f 0d 6c 6f | 63 61 6c 27 4d 6f 64 69 |r).*/.lo|cal'Modi|
|00000c00| 66 69 65 64 20 7b 20 34 | 2f 31 34 2f 30 30 20 7d |fied { 4|/14/00 }|
|00000c10| 20 41 2e 47 2e 0d 64 69 | 6d 20 74 68 65 43 68 61 | A.G..di|m theCha|
|00000c20| 72 26 0d 72 75 6e 74 69 | 6d 65 20 41 73 63 5f 63 |r&.runti|me Asc_c|
|00000c30| 74 6e 72 28 43 74 6e 72 | 50 74 72 26 29 0d 74 68 |tnr(Ctnr|Ptr&).th|
|00000c40| 65 43 68 61 72 26 20 3d | 20 30 0d 6c 6f 6e 67 20 |eChar& =| 0.long |
|00000c50| 69 66 20 43 74 6e 72 50 | 74 72 26 2e 6e 69 6c 26 |if CtnrP|tr&.nil&|
|00000c60| 0d 74 68 65 43 68 61 72 | 26 20 3d 20 66 6e 20 67 |.theChar|& = fn g|
|00000c70| 65 74 68 61 6e 64 6c 65 | 73 69 7a 65 28 43 74 6e |ethandle|size(Ctn|
|00000c80| 72 50 74 72 26 2e 6e 69 | 6c 26 29 0d 6c 6f 6e 67 |rPtr&.ni|l&).long|
|00000c90| 20 69 66 20 74 68 65 43 | 68 61 72 26 0d 74 68 65 | if theC|har&.the|
|00000ca0| 43 68 61 72 26 20 3d 20 | 7c 5b 43 74 6e 72 50 74 |Char& = ||[CtnrPt|
|00000cb0| 72 26 2e 6e 69 6c 26 5d | 7c 0d 65 6e 64 20 69 66 |r&.nil&]||.end if|
|00000cc0| 0d 65 6e 64 20 69 66 0d | 65 6e 64 20 66 6e 20 3d |.end if.|end fn =|
|00000cd0| 20 74 68 65 43 68 61 72 | 26 27 4d 6f 64 69 66 69 | theChar|&'Modifi|
|00000ce0| 65 64 20 7b 20 34 2f 31 | 34 2f 30 30 20 7d 20 41 |ed { 4/1|4/00 } A|
|00000cf0| 2e 47 2e 0d 27 0d 63 6f | 6d 70 69 6c 65 20 6c 6f |.G..'.co|mpile lo|
|00000d00| 6e 67 20 69 66 20 64 65 | 66 20 5f 6f 6c 64 4b 61 |ng if de|f _oldKa|
|00000d10| 6e 6a 69 52 6f 75 74 69 | 6e 65 73 0d 2f 2a 0d 20 |njiRouti|nes./*. |
|00000d20| 20 20 20 20 20 6c 6f 6e | 67 20 3d 20 4b 4c 45 4e | lon|g = KLEN|
|00000d30| 28 43 6f 6e 74 61 69 6e | 65 72 29 20 20 20 20 20 |(Contain|er) |
|00000d40| 20 20 20 20 20 20 20 20 | 20 20 4d 6f 64 69 66 69 | | Modifi|
|00000d50| 65 64 20 7b 20 34 2f 31 | 34 2f 30 30 20 7d 20 41 |ed { 4/1|4/00 } A|
|00000d60| 2e 47 2e 0d 2a 2f 0d 6c | 6f 63 61 6c 0d 64 69 6d |.G..*/.l|ocal.dim|
|00000d70| 20 63 68 61 72 43 6f 75 | 6e 74 26 2c 73 74 72 4c | charCou|nt&,strL|
|00000d80| 65 6e 67 74 68 26 2c 62 | 79 74 65 4f 66 66 73 65 |ength&,b|yteOffse|
|00000d90| 74 26 0d 52 55 4e 54 49 | 4d 45 20 4b 61 6e 6a 69 |t&.RUNTI|ME Kanji|
|00000da0| 4c 65 6e 5f 63 74 6e 72 | 28 43 74 6e 72 50 74 72 |Len_ctnr|(CtnrPtr|
|00000db0| 26 29 0d 27 7e 27 0d 63 | 68 61 72 43 6f 75 6e 74 |&).'~'.c|harCount|
|00000dc0| 26 20 3d 20 30 0d 6c 6f | 6e 67 20 69 66 20 43 74 |& = 0.lo|ng if Ct|
|00000dd0| 6e 72 50 74 72 26 2e 6e | 69 6c 26 0d 73 74 72 4c |nrPtr&.n|il&.strL|
|00000de0| 65 6e 67 74 68 26 20 3d | 20 66 6e 20 67 65 74 68 |ength& =| fn geth|
|00000df0| 61 6e 64 6c 65 73 69 7a | 65 28 43 74 6e 72 50 74 |andlesiz|e(CtnrPt|
|00000e00| 72 26 2e 6e 69 6c 26 29 | 0d 66 6f 72 20 62 79 74 |r&.nil&)|.for byt|
|00000e10| 65 4f 66 66 73 65 74 26 | 20 3d 20 31 20 74 6f 20 |eOffset&| = 1 to |
|00000e20| 73 74 72 4c 65 6e 67 74 | 68 26 0d 6c 6f 6e 67 20 |strLengt|h&.long |
|00000e30| 69 66 20 66 6e 20 43 68 | 61 72 61 63 74 65 72 42 |if fn Ch|aracterB|
|00000e40| 79 74 65 54 79 70 65 28 | 5b 43 74 6e 72 50 74 72 |yteType(|[CtnrPtr|
|00000e50| 26 2e 6e 69 6c 26 5d 2c | 62 79 74 65 4f 66 66 73 |&.nil&],|byteOffs|
|00000e60| 65 74 26 2d 31 2c 5f 73 | 6d 43 75 72 72 65 6e 74 |et&-1,_s|mCurrent|
|00000e70| 53 63 72 69 70 74 29 20 | 3c 3d 20 5f 73 6d 73 69 |Script) |<= _smsi|
|00000e80| 6e 67 6c 65 62 79 74 65 | 0d 69 6e 63 28 63 68 61 |nglebyte|.inc(cha|
|00000e90| 72 43 6f 75 6e 74 26 29 | 0d 65 6e 64 20 69 66 0d |rCount&)|.end if.|
|00000ea0| 6e 65 78 74 0d 65 6e 64 | 20 69 66 0d 45 4e 44 20 |next.end| if.END |
|00000eb0| 46 4e 20 3d 20 63 68 61 | 72 43 6f 75 6e 74 26 0d |FN = cha|rCount&.|
|00000ec0| 2f 2a 0d 20 20 20 20 20 | 20 6c 6f 6e 67 20 3d 20 |/*. | long = |
|00000ed0| 4b 41 53 43 28 43 6f 6e | 74 61 69 6e 65 72 29 20 |KASC(Con|tainer) |
|00000ee0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 4d 6f | | Mo|
|00000ef0| 64 69 66 69 65 64 20 7b | 20 34 2f 31 34 2f 30 30 |dified {| 4/14/00|
|00000f00| 20 7d 20 41 2e 47 2e 0d | 2a 2f 0d 4c 4f 43 41 4c | } A.G..|*/.LOCAL|
|00000f10| 0d 44 49 4d 20 63 0d 64 | 69 6d 20 73 74 72 4c 65 |.DIM c.d|im strLe|
|00000f20| 6e 67 74 68 26 0d 52 55 | 4e 54 49 4d 45 20 4b 61 |ngth&.RU|NTIME Ka|
|00000f30| 6e 6a 69 41 73 63 5f 63 | 74 6e 72 28 43 74 6e 72 |njiAsc_c|tnr(Ctnr|
|00000f40| 50 74 72 26 29 0d 27 7e | 27 0d 63 3d 30 0d 6c 6f |Ptr&).'~|'.c=0.lo|
|00000f50| 6e 67 20 69 66 20 43 74 | 6e 72 50 74 72 26 2e 6e |ng if Ct|nrPtr&.n|
|00000f60| 69 6c 26 0d 73 74 72 4c | 65 6e 67 74 68 26 20 3d |il&.strL|ength& =|
|00000f70| 20 66 6e 20 67 65 74 68 | 61 6e 64 6c 65 73 69 7a | fn geth|andlesiz|
|00000f80| 65 28 43 74 6e 72 50 74 | 72 26 2e 6e 69 6c 26 29 |e(CtnrPt|r&.nil&)|
|00000f90| 0d 73 65 6c 65 63 74 20 | 73 74 72 4c 65 6e 67 74 |.select |strLengt|
|00000fa0| 68 26 0d 63 61 73 65 20 | 30 20 3a 20 63 20 3d 20 |h&.case |0 : c = |
|00000fb0| 30 0d 63 61 73 65 20 31 | 20 3a 20 63 20 3d 20 50 |0.case 1| : c = P|
|00000fc0| 45 45 4b 28 5b 43 74 6e | 72 50 74 72 26 2e 6e 69 |EEK([Ctn|rPtr&.ni|
|00000fd0| 6c 26 5d 29 0d 63 61 73 | 65 20 65 6c 73 65 0d 6c |l&]).cas|e else.l|
|00000fe0| 6f 6e 67 20 69 66 20 66 | 6e 20 43 68 61 72 61 63 |ong if f|n Charac|
|00000ff0| 74 65 72 42 79 74 65 54 | 79 70 65 28 5b 5b 43 74 |terByteT|ype([[Ct|
|00001000| 6e 72 50 74 72 26 2e 6e | 69 6c 26 5d 5d 2c 30 2c |nrPtr&.n|il&]],0,|
|00001010| 5f 73 6d 43 75 72 72 65 | 6e 74 53 63 72 69 70 74 |_smCurre|ntScript|
|00001020| 29 20 3d 20 5f 73 6d 66 | 69 72 73 74 62 79 74 65 |) = _smf|irstbyte|
|00001030| 0d 63 20 3d 20 7b 5b 43 | 74 6e 72 50 74 72 26 2e |.c = {[C|tnrPtr&.|
|00001040| 6e 69 6c 26 5d 7d 0d 78 | 65 6c 73 65 0d 63 20 3d |nil&]}.x|else.c =|
|00001050| 20 50 45 45 4b 28 5b 43 | 74 6e 72 50 74 72 26 2e | PEEK([C|tnrPtr&.|
|00001060| 6e 69 6c 26 5d 29 0d 65 | 6e 64 20 69 66 0d 65 6e |nil&]).e|nd if.en|
|00001070| 64 20 73 65 6c 65 63 74 | 0d 65 6e 64 20 69 66 0d |d select|.end if.|
|00001080| 45 4e 44 20 46 4e 20 3d | 20 63 0d 27 0d 63 6f 6d |END FN =| c.'.com|
|00001090| 70 69 6c 65 20 65 6e 64 | 20 69 66 0d 2f 2a 0d 20 |pile end| if./*. |
|000010a0| 20 20 20 20 50 72 69 6e | 74 20 43 6f 6e 74 61 69 | Prin|t Contai|
|000010b0| 6e 65 72 0d 2a 2f 0d 6c | 6f 63 61 6c 0d 64 69 6d |ner.*/.l|ocal.dim|
|000010c0| 20 6c 26 2c 70 26 2c 63 | 26 2c 63 74 6e 72 48 61 | l&,p&,c|&,ctnrHa|
|000010d0| 6e 64 6c 65 26 2c 74 24 | 0d 72 75 6e 74 69 6d 65 |ndle&,t$|.runtime|
|000010e0| 20 50 72 69 6e 74 43 6f | 6e 74 61 69 6e 65 72 28 | PrintCo|ntainer(|
|000010f0| 63 74 6e 72 56 61 72 50 | 74 72 26 29 0d 63 74 6e |ctnrVarP|tr&).ctn|
|00001100| 72 48 61 6e 64 6c 65 26 | 20 3d 20 63 74 6e 72 56 |rHandle&| = ctnrV|
|00001110| 61 72 50 74 72 26 2e 6e | 69 6c 26 0d 6c 6f 6e 67 |arPtr&.n|il&.long|
|00001120| 20 69 66 20 63 74 6e 72 | 48 61 6e 64 6c 65 26 0d | if ctnr|Handle&.|
|00001130| 6c 26 20 3d 20 66 6e 20 | 67 65 74 68 61 6e 64 6c |l& = fn |gethandl|
|00001140| 65 73 69 7a 65 28 63 74 | 6e 72 48 61 6e 64 6c 65 |esize(ct|nrHandle|
|00001150| 26 29 0d 70 26 20 3d 20 | 30 0d 74 24 20 3d 20 22 |&).p& = |0.t$ = "|
|00001160| 22 0d 77 68 69 6c 65 20 | 70 26 20 3c 20 6c 26 0d |".while |p& < l&.|
|00001170| 6c 6f 6e 67 20 69 66 20 | 74 24 5b 30 5d 20 3d 20 |long if |t$[0] = |
|00001180| 32 35 35 0d 70 72 69 6e | 74 20 74 24 3b 0d 74 24 |255.prin|t t$;.t$|
|00001190| 3d 22 22 0d 65 6e 64 20 | 69 66 0d 63 26 20 3d 20 |="".end |if.c& = |
|000011a0| 70 65 65 6b 28 5b 63 74 | 6e 72 48 61 6e 64 6c 65 |peek([ct|nrHandle|
|000011b0| 26 5d 2b 70 26 29 0d 69 | 6e 63 28 70 26 29 0d 6c |&]+p&).i|nc(p&).l|
|000011c0| 6f 6e 67 20 69 66 20 63 | 26 20 3d 20 31 33 0d 70 |ong if c|& = 13.p|
|000011d0| 72 69 6e 74 20 74 24 0d | 74 24 3d 22 22 0d 78 65 |rint t$.|t$="".xe|
|000011e0| 6c 73 65 0d 74 24 3d 74 | 24 2b 63 68 72 24 28 63 |lse.t$=t|$+chr$(c|
|000011f0| 26 29 0d 65 6e 64 20 69 | 66 0d 77 65 6e 64 0d 70 |&).end i|f.wend.p|
|00001200| 72 69 6e 74 20 74 24 3b | 0d 65 6e 64 20 69 66 0d |rint t$;|.end if.|
|00001210| 65 6e 64 20 66 6e 0d 2f | 2a 0d 20 20 20 20 20 53 |end fn./|*. S|
|00001220| 74 6f 72 65 20 73 72 63 | 20 63 6f 6e 74 61 69 6e |tore src| contain|
|00001230| 65 72 20 69 6e 20 64 65 | 73 74 20 63 6f 6e 74 61 |er in de|st conta|
|00001240| 69 6e 65 72 0d 2a 2f 0d | 6c 6f 63 61 6c 0d 64 69 |iner.*/.|local.di|
|00001250| 6d 20 40 63 74 6e 72 48 | 26 2c 65 72 72 0d 6c 6f |m @ctnrH|&,err.lo|
|00001260| 63 61 6c 20 66 6e 20 46 | 42 43 74 6e 72 43 6f 70 |cal fn F|BCtnrCop|
|00001270| 79 28 73 72 63 43 74 6e | 72 56 61 72 26 2c 64 65 |y(srcCtn|rVar&,de|
|00001280| 73 74 43 74 6e 72 56 61 | 72 26 29 0d 6c 6f 6e 67 |stCtnrVa|r&).long|
|00001290| 20 69 66 20 73 72 63 43 | 74 6e 72 56 61 72 26 20 | if srcC|tnrVar& |
|000012a0| 3c 3e 20 64 65 73 74 43 | 74 6e 72 56 61 72 26 27 |<> destC|tnrVar&'|
|000012b0| 57 6f 75 6c 64 20 64 69 | 65 20 69 66 20 65 71 75 |Would di|e if equ|
|000012c0| 61 6c 21 0d 63 74 6e 72 | 48 26 20 3d 20 64 65 73 |al!.ctnr|H& = des|
|000012d0| 74 43 74 6e 72 56 61 72 | 26 2e 6e 69 6c 26 27 64 |tCtnrVar|&.nil&'d|
|000012e0| 65 73 74 20 68 6e 64 6c | 26 0d 69 66 20 63 74 6e |est hndl|&.if ctn|
|000012f0| 72 48 26 20 74 68 65 6e | 20 64 69 73 70 6f 73 65 |rH& then| dispose|
|00001300| 68 61 6e 64 6c 65 28 63 | 74 6e 72 48 26 29 27 64 |handle(c|tnrH&)'d|
|00001310| 75 6d 70 20 74 68 65 20 | 6f 6c 64 20 68 61 6e 64 |ump the |old hand|
|00001320| 6c 65 0d 63 74 6e 72 48 | 26 20 3d 20 73 72 63 43 |le.ctnrH|& = srcC|
|00001330| 74 6e 72 56 61 72 26 2e | 6e 69 6c 26 27 67 65 74 |tnrVar&.|nil&'get|
|00001340| 20 73 72 63 20 68 61 6e | 64 6c 65 0d 6c 6f 6e 67 | src han|dle.long|
|00001350| 20 69 66 20 63 74 6e 72 | 48 26 0d 65 72 72 20 3d | if ctnr|H&.err =|
|00001360| 20 66 6e 20 68 61 6e 64 | 74 6f 68 61 6e 64 28 63 | fn hand|tohand(c|
|00001370| 74 6e 72 48 26 29 27 63 | 6f 70 79 20 74 68 65 20 |tnrH&)'c|opy the |
|00001380| 68 6e 64 6c 0d 66 6e 20 | 46 42 43 74 6e 72 43 68 |hndl.fn |FBCtnrCh|
|00001390| 65 63 6b 4d 65 6d 45 72 | 72 28 65 72 72 2c 22 43 |eckMemEr|r(err,"C|
|000013a0| 6f 70 79 69 6e 67 20 69 | 6e 20 46 42 43 74 6e 72 |opying i|n FBCtnr|
|000013b0| 43 6f 70 79 22 29 0d 65 | 6e 64 20 69 66 0d 64 65 |Copy").e|nd if.de|
|000013c0| 73 74 43 74 6e 72 56 61 | 72 26 2e 6e 69 6c 26 20 |stCtnrVa|r&.nil& |
|000013d0| 3d 20 63 74 6e 72 48 26 | 27 73 74 6f 72 65 20 69 |= ctnrH&|'store i|
|000013e0| 74 20 69 6e 20 64 65 73 | 74 20 76 61 72 0d 65 6e |t in des|t var.en|
|000013f0| 64 20 69 66 0d 65 6e 64 | 20 66 6e 0d 2f 2a 0d 20 |d if.end| fn./*. |
|00001400| 20 20 20 20 53 74 6f 72 | 65 20 73 72 63 20 63 6f | Stor|e src co|
|00001410| 6e 74 61 69 6e 65 72 20 | 69 6e 20 64 65 73 74 20 |ntainer |in dest |
|00001420| 63 6f 6e 74 61 69 6e 65 | 72 0d 2a 2f 0d 72 75 6e |containe|r.*/.run|
|00001430| 74 69 6d 65 20 43 54 4e | 52 53 54 4f 52 45 43 54 |time CTN|RSTORECT|
|00001440| 4e 52 28 73 72 63 43 74 | 6e 72 56 61 72 26 2c 64 |NR(srcCt|nrVar&,d|
|00001450| 65 73 74 43 74 6e 72 56 | 61 72 26 29 0d 66 6e 20 |estCtnrV|ar&).fn |
|00001460| 46 42 43 74 6e 72 43 6f | 70 79 28 73 72 63 43 74 |FBCtnrCo|py(srcCt|
|00001470| 6e 72 56 61 72 26 2c 64 | 65 73 74 43 74 6e 72 56 |nrVar&,d|estCtnrV|
|00001480| 61 72 26 29 0d 65 6e 64 | 20 66 6e 0d 2f 2a 0d 20 |ar&).end| fn./*. |
|00001490| 20 20 20 20 53 74 6f 72 | 65 20 73 72 63 20 63 6f | Stor|e src co|
|000014a0| 6e 74 61 69 6e 65 72 20 | 69 6e 20 64 65 73 74 20 |ntainer |in dest |
|000014b0| 63 6f 6e 74 61 69 6e 65 | 72 20 20 20 43 68 61 6e |containe|r Chan|
|000014c0| 67 65 64 20 7b 20 33 2f | 32 36 2f 30 31 20 7d 20 |ged { 3/|26/01 } |
|000014d0| 41 2e 47 2e 0d 2a 2f 0d | 72 75 6e 74 69 6d 65 20 |A.G..*/.|runtime |
|000014e0| 43 54 4e 52 4d 4f 56 45 | 43 54 4e 52 28 64 65 73 |CTNRMOVE|CTNR(des|
|000014f0| 74 43 74 6e 72 56 61 72 | 26 2c 73 72 63 43 74 6e |tCtnrVar|&,srcCtn|
|00001500| 72 56 61 72 26 29 0d 2f | 2f 2f 66 6e 20 46 42 43 |rVar&)./|//fn FBC|
|00001510| 74 6e 72 43 6f 70 79 28 | 73 72 63 43 74 6e 72 56 |tnrCopy(|srcCtnrV|
|00001520| 61 72 26 2c 64 65 73 74 | 43 74 6e 72 56 61 72 26 |ar&,dest|CtnrVar&|
|00001530| 29 0d 66 6e 20 46 42 43 | 74 6e 72 43 6f 70 79 28 |).fn FBC|tnrCopy(|
|00001540| 73 72 63 43 74 6e 72 56 | 61 72 26 2c 64 65 73 74 |srcCtnrV|ar&,dest|
|00001550| 43 74 6e 72 56 61 72 26 | 29 0d 65 6e 64 20 66 6e |CtnrVar&|).end fn|
|00001560| 0d 2f 2a 0d 20 20 20 20 | 20 53 74 6f 72 65 20 73 |./*. | Store s|
|00001570| 72 63 20 63 6f 6e 74 61 | 69 6e 65 72 20 69 6e 20 |rc conta|iner in |
|00001580| 64 65 73 74 20 63 6f 6e | 74 61 69 6e 65 72 0d 2a |dest con|tainer.*|
|00001590| 2f 0d 6c 6f 63 61 6c 0d | 64 69 6d 20 40 63 74 6e |/.local.|dim @ctn|
|000015a0| 72 48 26 2c 65 72 72 0d | 72 75 6e 74 69 6d 65 20 |rH&,err.|runtime |
|000015b0| 43 54 4e 52 53 54 4f 52 | 45 48 61 6e 64 6c 65 28 |CTNRSTOR|EHandle(|
|000015c0| 75 73 65 72 48 6e 64 6c | 26 2c 64 65 73 74 43 74 |userHndl|&,destCt|
|000015d0| 6e 72 56 61 72 26 29 0d | 63 74 6e 72 48 26 20 3d |nrVar&).|ctnrH& =|
|000015e0| 20 64 65 73 74 43 74 6e | 72 56 61 72 26 2e 6e 69 | destCtn|rVar&.ni|
|000015f0| 6c 26 27 64 65 73 74 20 | 68 6e 64 6c 26 0d 69 66 |l&'dest |hndl&.if|
|00001600| 20 63 74 6e 72 48 26 20 | 74 68 65 6e 20 64 69 73 | ctnrH& |then dis|
|00001610| 70 6f 73 65 68 61 6e 64 | 6c 65 28 63 74 6e 72 48 |posehand|le(ctnrH|
|00001620| 26 29 27 64 75 6d 70 20 | 74 68 65 20 6f 6c 64 20 |&)'dump |the old |
|00001630| 68 61 6e 64 6c 65 0d 63 | 74 6e 72 48 26 20 3d 20 |handle.c|tnrH& = |
|00001640| 75 73 65 72 48 6e 64 6c | 26 27 67 65 74 20 73 72 |userHndl|&'get sr|
|00001650| 63 20 68 61 6e 64 6c 65 | 0d 6c 6f 6e 67 20 69 66 |c handle|.long if|
|00001660| 20 63 74 6e 72 48 26 0d | 65 72 72 20 3d 20 66 6e | ctnrH&.|err = fn|
|00001670| 20 68 61 6e 64 74 6f 68 | 61 6e 64 28 63 74 6e 72 | handtoh|and(ctnr|
|00001680| 48 26 29 27 63 6f 70 79 | 20 74 68 65 20 68 6e 64 |H&)'copy| the hnd|
|00001690| 6c 0d 66 6e 20 46 42 43 | 74 6e 72 43 68 65 63 6b |l.fn FBC|tnrCheck|
|000016a0| 4d 65 6d 45 72 72 28 30 | 2c 22 69 6e 20 43 54 4e |MemErr(0|,"in CTN|
|000016b0| 52 53 54 4f 52 45 48 61 | 6e 64 6c 65 22 29 0d 65 |RSTOREHa|ndle").e|
|000016c0| 6e 64 20 69 66 0d 64 65 | 73 74 43 74 6e 72 56 61 |nd if.de|stCtnrVa|
|000016d0| 72 26 2e 6e 69 6c 26 20 | 3d 20 63 74 6e 72 48 26 |r&.nil& |= ctnrH&|
|000016e0| 27 73 74 6f 72 65 20 69 | 74 20 69 6e 20 64 65 73 |'store i|t in des|
|000016f0| 74 20 76 61 72 0d 65 6e | 64 20 66 6e 0d 2f 2a 0d |t var.en|d fn./*.|
|00001700| 20 20 20 20 20 53 74 6f | 72 65 20 73 72 63 20 63 | Sto|re src c|
|00001710| 6f 6e 74 61 69 6e 65 72 | 20 69 6e 20 64 65 73 74 |ontainer| in dest|
|00001720| 20 63 6f 6e 74 61 69 6e | 65 72 0d 2a 2f 0d 6c 6f | contain|er.*/.lo|
|00001730| 63 61 6c 0d 64 69 6d 20 | 40 63 74 6e 72 48 26 2c |cal.dim |@ctnrH&,|
|00001740| 65 72 72 0d 72 75 6e 74 | 69 6d 65 20 43 54 4e 52 |err.runt|ime CTNR|
|00001750| 53 54 4f 52 45 52 45 53 | 49 44 28 75 73 65 72 49 |STORERES|ID(userI|
|00001760| 44 26 2c 64 65 73 74 43 | 74 6e 72 56 61 72 26 29 |D&,destC|tnrVar&)|
|00001770| 0d 63 74 6e 72 48 26 20 | 3d 20 64 65 73 74 43 74 |.ctnrH& |= destCt|
|00001780| 6e 72 56 61 72 26 2e 6e | 69 6c 26 27 64 65 73 74 |nrVar&.n|il&'dest|
|00001790| 20 68 6e 64 6c 26 0d 69 | 66 20 63 74 6e 72 48 26 | hndl&.i|f ctnrH&|
|000017a0| 20 74 68 65 6e 20 64 69 | 73 70 6f 73 65 68 61 6e | then di|sposehan|
|000017b0| 64 6c 65 28 63 74 6e 72 | 48 26 29 27 64 75 6d 70 |dle(ctnr|H&)'dump|
|000017c0| 20 74 68 65 20 6f 6c 64 | 20 68 61 6e 64 6c 65 0d | the old| handle.|
|000017d0| 63 74 6e 72 48 26 20 3d | 20 66 6e 20 67 65 74 72 |ctnrH& =| fn getr|
|000017e0| 65 73 6f 75 72 63 65 28 | 5f 22 54 45 58 54 22 2c |esource(|_"TEXT",|
|000017f0| 75 73 65 72 49 44 26 29 | 27 67 65 74 20 73 72 63 |userID&)|'get src|
|00001800| 20 68 61 6e 64 6c 65 0d | 6c 6f 6e 67 20 69 66 20 | handle.|long if |
|00001810| 63 74 6e 72 48 26 0d 64 | 65 74 61 63 68 72 65 73 |ctnrH&.d|etachres|
|00001820| 6f 75 72 63 65 28 63 74 | 6e 72 48 26 29 0d 48 4e |ource(ct|nrH&).HN|
|00001830| 6f 50 75 72 67 65 28 63 | 74 6e 72 48 26 29 0d 66 |oPurge(c|tnrH&).f|
|00001840| 6e 20 46 42 43 74 6e 72 | 43 68 65 63 6b 4d 65 6d |n FBCtnr|CheckMem|
|00001850| 45 72 72 28 30 2c 22 69 | 6e 20 43 54 4e 52 53 54 |Err(0,"i|n CTNRST|
|00001860| 4f 52 45 52 45 53 49 44 | 22 29 0d 65 6e 64 20 69 |ORERESID|").end i|
|00001870| 66 0d 64 65 73 74 43 74 | 6e 72 56 61 72 26 2e 6e |f.destCt|nrVar&.n|
|00001880| 69 6c 26 20 3d 20 63 74 | 6e 72 48 26 27 73 74 6f |il& = ct|nrH&'sto|
|00001890| 72 65 20 69 74 20 69 6e | 20 64 65 73 74 20 76 61 |re it in| dest va|
|000018a0| 72 0d 65 6e 64 20 66 6e | 0d 2f 2a 0d 20 20 20 20 |r.end fn|./*. |
|000018b0| 20 43 6f 6e 74 61 69 6e | 65 72 20 74 6f 20 61 63 | Contain|er to ac|
|000018c0| 63 75 6d 75 6c 61 74 6f | 72 0d 2a 2f 0d 72 75 6e |cumulato|r.*/.run|
|000018d0| 74 69 6d 65 20 43 54 4e | 52 4c 4f 41 44 43 54 4e |time CTN|RLOADCTN|
|000018e0| 52 28 63 74 6e 72 56 61 | 72 50 74 72 26 29 0d 65 |R(ctnrVa|rPtr&).e|
|000018f0| 6e 64 20 66 6e 20 3d 20 | 63 74 6e 72 56 61 72 50 |nd fn = |ctnrVarP|
|00001900| 74 72 26 0d 27 0d 62 65 | 67 69 6e 20 67 6c 6f 62 |tr&.'.be|gin glob|
|00001910| 61 6c 73 0d 64 69 6d 20 | 67 46 42 54 65 6d 70 43 |als.dim |gFBTempC|
|00001920| 6f 6e 74 61 69 6e 65 72 | 20 61 73 20 63 6f 6e 74 |ontainer| as cont|
|00001930| 61 69 6e 65 72 0d 65 6e | 64 20 67 6c 6f 62 61 6c |ainer.en|d global|
|00001940| 73 0d 27 0d 6c 6f 63 61 | 6c 0d 64 69 6d 20 40 20 |s.'.loca|l.dim @ |
|00001950| 6e 65 77 48 6e 64 6c 26 | 0d 6c 6f 63 61 6c 20 66 |newHndl&|.local f|
|00001960| 6e 20 46 42 43 6c 65 61 | 72 54 65 6d 70 43 6f 6e |n FBClea|rTempCon|
|00001970| 74 61 69 6e 65 72 0d 6e | 65 77 48 6e 64 6c 26 20 |tainer.n|ewHndl& |
|00001980| 3d 5b 40 67 46 42 54 65 | 6d 70 43 6f 6e 74 61 69 |=[@gFBTe|mpContai|
|00001990| 6e 65 72 5d 0d 64 65 66 | 20 64 69 73 70 6f 73 65 |ner].def| dispose|
|000019a0| 68 28 6e 65 77 48 6e 64 | 6c 26 29 27 64 75 6d 70 |h(newHnd|l&)'dump|
|000019b0| 20 74 68 65 20 6f 6c 64 | 20 68 61 6e 64 6c 65 0d | the old| handle.|
|000019c0| 26 20 40 67 46 42 54 65 | 6d 70 43 6f 6e 74 61 69 |& @gFBTe|mpContai|
|000019d0| 6e 65 72 2c 30 0d 65 6e | 64 20 66 6e 0d 27 0d 72 |ner,0.en|d fn.'.r|
|000019e0| 75 6e 74 69 6d 65 20 4c | 65 66 74 5f 43 74 6e 72 |untime L|eft_Ctnr|
|000019f0| 28 63 74 6e 72 56 61 72 | 50 74 72 26 2c 6c 65 6e |(ctnrVar|Ptr&,len|
|00001a00| 67 74 68 26 29 0d 64 69 | 6d 20 63 74 6e 72 48 26 |gth&).di|m ctnrH&|
|00001a10| 2c 63 74 6e 72 4c 65 6e | 26 0d 64 69 6d 20 6e 65 |,ctnrLen|&.dim ne|
|00001a20| 77 48 6e 64 6c 26 0d 6e | 65 77 48 6e 64 6c 26 20 |wHndl&.n|ewHndl& |
|00001a30| 3d 20 30 0d 63 74 6e 72 | 48 26 20 3d 20 63 74 6e |= 0.ctnr|H& = ctn|
|00001a40| 72 56 61 72 50 74 72 26 | 2e 6e 69 6c 26 0d 66 6e |rVarPtr&|.nil&.fn|
|00001a50| 20 46 42 43 6c 65 61 72 | 54 65 6d 70 43 6f 6e 74 | FBClear|TempCont|
|00001a60| 61 69 6e 65 72 0d 69 66 | 20 63 74 6e 72 48 26 20 |ainer.if| ctnrH& |
|00001a70| 74 68 65 6e 20 63 74 6e | 72 4c 65 6e 26 20 3d 20 |then ctn|rLen& = |
|00001a80| 66 6e 20 67 65 74 68 61 | 6e 64 6c 65 73 69 7a 65 |fn getha|ndlesize|
|00001a90| 28 63 74 6e 72 48 26 29 | 20 65 6c 73 65 20 63 74 |(ctnrH&)| else ct|
|00001aa0| 6e 72 4c 65 6e 26 3d 30 | 0d 69 66 20 6c 65 6e 67 |nrLen&=0|.if leng|
|00001ab0| 74 68 26 20 3e 20 63 74 | 6e 72 4c 65 6e 26 20 74 |th& > ct|nrLen& t|
|00001ac0| 68 65 6e 20 6c 65 6e 67 | 74 68 26 20 3d 20 63 74 |hen leng|th& = ct|
|00001ad0| 6e 72 4c 65 6e 26 0d 69 | 66 20 6c 65 6e 67 74 68 |nrLen&.i|f length|
|00001ae0| 26 20 3c 20 30 20 20 20 | 20 20 20 20 20 74 68 65 |& < 0 | the|
|00001af0| 6e 20 6c 65 6e 67 74 68 | 26 20 3d 20 30 0d 6e 65 |n length|& = 0.ne|
|00001b00| 77 48 6e 64 6c 26 20 3d | 20 66 6e 20 46 42 4e 65 |wHndl& =| fn FBNe|
|00001b10| 77 43 6f 6e 74 61 69 6e | 65 72 28 6c 65 6e 67 74 |wContain|er(lengt|
|00001b20| 68 26 29 27 43 68 61 6e | 67 65 64 20 7b 20 33 2f |h&)'Chan|ged { 3/|
|00001b30| 32 36 2f 30 31 20 7d 20 | 41 2e 47 2e 0d 6c 6f 6e |26/01 } |A.G..lon|
|00001b40| 67 20 69 66 20 6c 65 6e | 67 74 68 26 0d 62 6c 6f |g if len|gth&.blo|
|00001b50| 63 6b 6d 6f 76 65 20 5b | 63 74 6e 72 48 26 5d 2c |ckmove [|ctnrH&],|
|00001b60| 5b 6e 65 77 48 6e 64 6c | 26 5d 2c 6c 65 6e 67 74 |[newHndl|&],lengt|
|00001b70| 68 26 0d 65 6e 64 20 69 | 66 0d 26 20 40 67 46 42 |h&.end i|f.& @gFB|
|00001b80| 54 65 6d 70 43 6f 6e 74 | 61 69 6e 65 72 2c 6e 65 |TempCont|ainer,ne|
|00001b90| 77 48 6e 64 6c 26 0d 65 | 6e 64 20 66 6e 20 3d 20 |wHndl&.e|nd fn = |
|00001ba0| 40 20 67 46 42 54 65 6d | 70 43 6f 6e 74 61 69 6e |@ gFBTem|pContain|
|00001bb0| 65 72 0d 27 0d 72 75 6e | 74 69 6d 65 20 52 69 67 |er.'.run|time Rig|
|00001bc0| 68 74 5f 43 74 6e 72 28 | 63 74 6e 72 56 61 72 50 |ht_Ctnr(|ctnrVarP|
|00001bd0| 74 72 26 2c 6c 65 6e 67 | 74 68 26 29 0d 64 69 6d |tr&,leng|th&).dim|
|00001be0| 20 63 74 6e 72 48 26 2c | 63 74 6e 72 4c 65 6e 26 | ctnrH&,|ctnrLen&|
|00001bf0| 0d 64 69 6d 20 6e 65 77 | 48 6e 64 6c 26 0d 6e 65 |.dim new|Hndl&.ne|
|00001c00| 77 48 6e 64 6c 26 20 3d | 20 30 0d 63 74 6e 72 48 |wHndl& =| 0.ctnrH|
|00001c10| 26 20 3d 20 20 63 74 6e | 72 56 61 72 50 74 72 26 |& = ctn|rVarPtr&|
|00001c20| 2e 6e 69 6c 26 0d 66 6e | 20 46 42 43 6c 65 61 72 |.nil&.fn| FBClear|
|00001c30| 54 65 6d 70 43 6f 6e 74 | 61 69 6e 65 72 0d 69 66 |TempCont|ainer.if|
|00001c40| 20 63 74 6e 72 48 26 20 | 74 68 65 6e 20 63 74 6e | ctnrH& |then ctn|
|00001c50| 72 4c 65 6e 26 20 3d 20 | 66 6e 20 67 65 74 68 61 |rLen& = |fn getha|
|00001c60| 6e 64 6c 65 73 69 7a 65 | 28 63 74 6e 72 48 26 29 |ndlesize|(ctnrH&)|
|00001c70| 20 65 6c 73 65 20 63 74 | 6e 72 4c 65 6e 26 3d 30 | else ct|nrLen&=0|
|00001c80| 0d 69 66 20 6c 65 6e 67 | 74 68 26 20 3e 20 63 74 |.if leng|th& > ct|
|00001c90| 6e 72 4c 65 6e 26 20 74 | 68 65 6e 20 6c 65 6e 67 |nrLen& t|hen leng|
|00001ca0| 74 68 26 20 3d 20 63 74 | 6e 72 4c 65 6e 26 0d 69 |th& = ct|nrLen&.i|
|00001cb0| 66 20 6c 65 6e 67 74 68 | 26 20 3c 20 30 20 20 20 |f length|& < 0 |
|00001cc0| 20 20 20 20 20 74 68 65 | 6e 20 6c 65 6e 67 74 68 | the|n length|
|00001cd0| 26 20 3d 20 30 0d 6c 6f | 6e 67 20 69 66 20 6c 65 |& = 0.lo|ng if le|
|00001ce0| 6e 67 74 68 26 0d 6e 65 | 77 48 6e 64 6c 26 20 3d |ngth&.ne|wHndl& =|
|00001cf0| 20 66 6e 20 46 42 4e 65 | 77 43 6f 6e 74 61 69 6e | fn FBNe|wContain|
|00001d00| 65 72 28 6c 65 6e 67 74 | 68 26 29 0d 62 6c 6f 63 |er(lengt|h&).bloc|
|00001d10| 6b 6d 6f 76 65 20 5b 63 | 74 6e 72 48 26 5d 2b 28 |kmove [c|tnrH&]+(|
|00001d20| 63 74 6e 72 4c 65 6e 26 | 2d 6c 65 6e 67 74 68 26 |ctnrLen&|-length&|
|00001d30| 29 2c 5b 6e 65 77 48 6e | 64 6c 26 5d 2c 6c 65 6e |),[newHn|dl&],len|
|00001d40| 67 74 68 26 0d 65 6e 64 | 20 69 66 0d 26 20 40 67 |gth&.end| if.& @g|
|00001d50| 46 42 54 65 6d 70 43 6f | 6e 74 61 69 6e 65 72 2c |FBTempCo|ntainer,|
|00001d60| 6e 65 77 48 6e 64 6c 26 | 0d 65 6e 64 20 66 6e 20 |newHndl&|.end fn |
|00001d70| 3d 20 40 20 67 46 42 54 | 65 6d 70 43 6f 6e 74 61 |= @ gFBT|empConta|
|00001d80| 69 6e 65 72 0d 27 0d 72 | 75 6e 74 69 6d 65 20 4d |iner.'.r|untime M|
|00001d90| 69 64 5f 43 74 6e 72 28 | 63 74 6e 72 56 61 72 50 |id_Ctnr(|ctnrVarP|
|00001da0| 74 72 26 2c 53 74 61 72 | 74 50 6f 73 26 2c 6c 65 |tr&,Star|tPos&,le|
|00001db0| 6e 67 74 68 26 29 0d 64 | 69 6d 20 63 74 6e 72 48 |ngth&).d|im ctnrH|
|00001dc0| 26 2c 63 74 6e 72 4c 65 | 6e 26 0d 64 69 6d 20 40 |&,ctnrLe|n&.dim @|
|00001dd0| 20 6e 65 77 48 6e 64 6c | 26 0d 6e 65 77 48 6e 64 | newHndl|&.newHnd|
|00001de0| 6c 26 20 3d 20 30 0d 64 | 65 63 28 53 74 61 72 74 |l& = 0.d|ec(Start|
|00001df0| 50 6f 73 26 29 20 3a 20 | 69 66 20 53 74 61 72 74 |Pos&) : |if Start|
|00001e00| 50 6f 73 26 20 3c 20 30 | 20 74 68 65 6e 20 53 74 |Pos& < 0| then St|
|00001e10| 61 72 74 50 6f 73 26 20 | 3d 20 30 0d 63 74 6e 72 |artPos& |= 0.ctnr|
|00001e20| 48 26 20 20 20 3d 20 20 | 63 74 6e 72 56 61 72 50 |H& = |ctnrVarP|
|00001e30| 74 72 26 2e 6e 69 6c 26 | 0d 66 6e 20 46 42 43 6c |tr&.nil&|.fn FBCl|
|00001e40| 65 61 72 54 65 6d 70 43 | 6f 6e 74 61 69 6e 65 72 |earTempC|ontainer|
|00001e50| 0d 69 66 20 63 74 6e 72 | 48 26 20 74 68 65 6e 20 |.if ctnr|H& then |
|00001e60| 63 74 6e 72 4c 65 6e 26 | 20 3d 20 66 6e 20 67 65 |ctnrLen&| = fn ge|
|00001e70| 74 68 61 6e 64 6c 65 73 | 69 7a 65 28 63 74 6e 72 |thandles|ize(ctnr|
|00001e80| 48 26 29 20 65 6c 73 65 | 20 63 74 6e 72 4c 65 6e |H&) else| ctnrLen|
|00001e90| 26 3d 30 0d 69 66 20 53 | 74 61 72 74 50 6f 73 26 |&=0.if S|tartPos&|
|00001ea0| 20 3e 20 63 74 6e 72 4c | 65 6e 26 20 74 68 65 6e | > ctnrL|en& then|
|00001eb0| 20 53 74 61 72 74 50 6f | 73 26 20 3d 20 63 74 6e | StartPo|s& = ctn|
|00001ec0| 72 4c 65 6e 26 0d 69 66 | 20 6c 65 6e 67 74 68 26 |rLen&.if| length&|
|00001ed0| 20 20 20 3e 20 63 74 6e | 72 4c 65 6e 26 2d 53 74 | > ctn|rLen&-St|
|00001ee0| 61 72 74 50 6f 73 26 20 | 74 68 65 6e 20 6c 65 6e |artPos& |then len|
|00001ef0| 67 74 68 26 20 3d 20 63 | 74 6e 72 4c 65 6e 26 2d |gth& = c|tnrLen&-|
|00001f00| 53 74 61 72 74 50 6f 73 | 26 0d 69 66 20 6c 65 6e |StartPos|&.if len|
|00001f10| 67 74 68 26 20 20 20 3c | 20 30 20 20 20 20 20 20 |gth& <| 0 |
|00001f20| 20 20 74 68 65 6e 20 6c | 65 6e 67 74 68 26 20 3d | then l|ength& =|
|00001f30| 20 30 0d 6c 6f 6e 67 20 | 69 66 20 6c 65 6e 67 74 | 0.long |if lengt|
|00001f40| 68 26 0d 6e 65 77 48 6e | 64 6c 26 20 3d 20 66 6e |h&.newHn|dl& = fn|
|00001f50| 20 46 42 4e 65 77 43 6f | 6e 74 61 69 6e 65 72 28 | FBNewCo|ntainer(|
|00001f60| 6c 65 6e 67 74 68 26 29 | 0d 62 6c 6f 63 6b 6d 6f |length&)|.blockmo|
|00001f70| 76 65 20 5b 63 74 6e 72 | 48 26 5d 2b 53 74 61 72 |ve [ctnr|H&]+Star|
|00001f80| 74 50 6f 73 26 2c 5b 6e | 65 77 48 6e 64 6c 26 5d |tPos&,[n|ewHndl&]|
|00001f90| 2c 6c 65 6e 67 74 68 26 | 27 43 68 61 6e 67 65 64 |,length&|'Changed|
|00001fa0| 20 7b 20 31 2f 39 2f 30 | 31 20 7d 20 41 2e 47 2e | { 1/9/0|1 } A.G.|
|00001fb0| 0d 65 6e 64 20 69 66 0d | 26 20 40 67 46 42 54 65 |.end if.|& @gFBTe|
|00001fc0| 6d 70 43 6f 6e 74 61 69 | 6e 65 72 2c 6e 65 77 48 |mpContai|ner,newH|
|00001fd0| 6e 64 6c 26 0d 65 6e 64 | 20 66 6e 20 3d 20 40 20 |ndl&.end| fn = @ |
|00001fe0| 67 46 42 54 65 6d 70 43 | 6f 6e 74 61 69 6e 65 72 |gFBTempC|ontainer|
|00001ff0| 0d 27 0d 72 75 6e 74 69 | 6d 65 20 53 54 52 49 4e |.'.runti|me STRIN|
|00002000| 47 53 54 52 5f 43 54 4e | 52 28 6c 65 6e 67 74 68 |GSTR_CTN|R(length|
|00002010| 26 29 0d 64 69 6d 20 63 | 74 6e 72 48 26 2c 69 20 |&).dim c|tnrH&,i |
|00002020| 61 73 20 6c 6f 6e 67 2c | 63 20 61 73 20 6c 6f 6e |as long,|c as lon|
|00002030| 67 0d 64 69 6d 20 40 20 | 6e 65 77 48 6e 64 6c 26 |g.dim @ |newHndl&|
|00002040| 0d 6e 65 77 48 6e 64 6c | 26 20 3d 20 30 0d 66 6e |.newHndl|& = 0.fn|
|00002050| 20 46 42 43 6c 65 61 72 | 54 65 6d 70 43 6f 6e 74 | FBClear|TempCont|
|00002060| 61 69 6e 65 72 0d 6c 6f | 6e 67 20 69 66 20 6c 65 |ainer.lo|ng if le|
|00002070| 6e 67 74 68 26 0d 6e 65 | 77 48 6e 64 6c 26 20 3d |ngth&.ne|wHndl& =|
|00002080| 20 66 6e 20 46 42 4e 65 | 77 43 6f 6e 74 61 69 6e | fn FBNe|wContain|
|00002090| 65 72 28 6c 65 6e 67 74 | 68 26 29 0d 63 20 3d 20 |er(lengt|h&).c = |
|000020a0| 7c 67 46 42 53 74 72 26 | 2b 31 7c 0d 66 6f 72 20 ||gFBStr&|+1|.for |
|000020b0| 69 20 3d 20 30 20 74 6f | 20 6c 65 6e 67 74 68 26 |i = 0 to| length&|
|000020c0| 2d 31 0d 70 6f 6b 65 20 | 5b 6e 65 77 48 6e 64 6c |-1.poke |[newHndl|
|000020d0| 26 5d 2b 69 2c 63 0d 6e | 65 78 74 0d 65 6e 64 20 |&]+i,c.n|ext.end |
|000020e0| 69 66 0d 26 20 40 67 46 | 42 54 65 6d 70 43 6f 6e |if.& @gF|BTempCon|
|000020f0| 74 61 69 6e 65 72 2c 20 | 6e 65 77 48 6e 64 6c 26 |tainer, |newHndl&|
|00002100| 0d 65 6e 64 20 66 6e 20 | 3d 20 40 20 67 46 42 54 |.end fn |= @ gFBT|
|00002110| 65 6d 70 43 6f 6e 74 61 | 69 6e 65 72 0d 27 0d 72 |empConta|iner.'.r|
|00002120| 75 6e 74 69 6d 65 20 53 | 54 52 49 4e 47 4e 55 4d |untime S|TRINGNUM|
|00002130| 5f 43 54 4e 52 28 6c 65 | 6e 67 74 68 26 2c 74 68 |_CTNR(le|ngth&,th|
|00002140| 65 43 68 61 72 26 29 0d | 64 69 6d 20 63 74 6e 72 |eChar&).|dim ctnr|
|00002150| 48 26 2c 69 20 61 73 20 | 6c 6f 6e 67 0d 64 69 6d |H&,i as |long.dim|
|00002160| 20 40 20 6e 65 77 48 6e | 64 6c 26 0d 6e 65 77 48 | @ newHn|dl&.newH|
|00002170| 6e 64 6c 26 20 3d 20 30 | 0d 66 6e 20 46 42 43 6c |ndl& = 0|.fn FBCl|
|00002180| 65 61 72 54 65 6d 70 43 | 6f 6e 74 61 69 6e 65 72 |earTempC|ontainer|
|00002190| 0d 6c 6f 6e 67 20 69 66 | 20 6c 65 6e 67 74 68 26 |.long if| length&|
|000021a0| 0d 6e 65 77 48 6e 64 6c | 26 20 3d 20 66 6e 20 46 |.newHndl|& = fn F|
|000021b0| 42 4e 65 77 43 6f 6e 74 | 61 69 6e 65 72 28 6c 65 |BNewCont|ainer(le|
|000021c0| 6e 67 74 68 26 29 0d 66 | 6f 72 20 69 20 3d 20 31 |ngth&).f|or i = 1|
|000021d0| 20 74 6f 20 6c 65 6e 67 | 74 68 26 0d 70 6f 6b 65 | to leng|th&.poke|
|000021e0| 20 5b 6e 65 77 48 6e 64 | 6c 26 5d 2b 69 2d 31 2c | [newHnd|l&]+i-1,|
|000021f0| 74 68 65 43 68 61 72 26 | 0d 6e 65 78 74 0d 65 6e |theChar&|.next.en|
|00002200| 64 20 69 66 0d 26 20 40 | 67 46 42 54 65 6d 70 43 |d if.& @|gFBTempC|
|00002210| 6f 6e 74 61 69 6e 65 72 | 2c 20 6e 65 77 48 6e 64 |ontainer|, newHnd|
|00002220| 6c 26 0d 65 6e 64 20 66 | 6e 20 3d 20 40 20 67 46 |l&.end f|n = @ gF|
|00002230| 42 54 65 6d 70 43 6f 6e | 74 61 69 6e 65 72 0d 27 |BTempCon|tainer.'|
|00002240| 0d 4c 4f 43 41 4c 0d 64 | 69 6d 20 62 79 74 65 4f |.LOCAL.d|im byteO|
|00002250| 66 66 73 65 74 26 2c 73 | 74 72 4c 65 6e 67 74 68 |ffset&,s|trLength|
|00002260| 26 2c 74 68 65 43 68 61 | 72 26 2c 74 65 6d 70 6c |&,theCha|r&,templ|
|00002270| 65 6e 26 0d 5f 46 42 55 | 63 61 73 65 42 6c 6f 63 |en&._FBU|caseBloc|
|00002280| 6b 53 69 7a 65 4c 69 6d | 69 74 20 3d 20 32 34 30 |kSizeLim|it = 240|
|00002290| 30 30 2f 2f 20 54 42 20 | 55 70 70 65 72 63 61 73 |00// TB |Uppercas|
|000022a0| 65 54 65 78 74 20 42 6c | 6f 63 6b 69 6e 67 20 53 |eText Bl|ocking S|
|000022b0| 69 7a 65 0d 52 55 4e 54 | 49 4d 45 20 55 43 61 73 |ize.RUNT|IME UCas|
|000022c0| 65 5f 43 74 6e 72 28 63 | 74 6e 72 56 61 72 50 74 |e_Ctnr(c|tnrVarPt|
|000022d0| 72 26 29 0d 64 69 6d 20 | 63 74 6e 72 48 26 2c 6c |r&).dim |ctnrH&,l|
|000022e0| 65 6e 67 74 68 26 2c 69 | 20 61 73 20 6c 6f 6e 67 |ength&,i| as long|
|000022f0| 2c 63 20 61 73 20 6c 6f | 6e 67 0d 64 69 6d 20 40 |,c as lo|ng.dim @|
|00002300| 20 6e 65 77 48 6e 64 6c | 26 0d 6e 65 77 48 6e 64 | newHndl|&.newHnd|
|00002310| 6c 26 20 3d 20 30 0d 64 | 69 6d 20 63 50 74 72 26 |l& = 0.d|im cPtr&|
|00002320| 0d 63 74 6e 72 48 26 20 | 3d 20 63 74 6e 72 56 61 |.ctnrH& |= ctnrVa|
|00002330| 72 50 74 72 26 2e 6e 69 | 6c 26 0d 66 6e 20 46 42 |rPtr&.ni|l&.fn FB|
|00002340| 43 6c 65 61 72 54 65 6d | 70 43 6f 6e 74 61 69 6e |ClearTem|pContain|
|00002350| 65 72 0d 69 66 20 63 74 | 6e 72 48 26 20 74 68 65 |er.if ct|nrH& the|
|00002360| 6e 20 6c 65 6e 67 74 68 | 26 20 3d 20 66 6e 20 67 |n length|& = fn g|
|00002370| 65 74 68 61 6e 64 6c 65 | 73 69 7a 65 28 63 74 6e |ethandle|size(ctn|
|00002380| 72 48 26 29 20 65 6c 73 | 65 20 6c 65 6e 67 74 68 |rH&) els|e length|
|00002390| 26 20 3d 20 30 0d 6c 6f | 6e 67 20 69 66 20 6c 65 |& = 0.lo|ng if le|
|000023a0| 6e 67 74 68 26 0d 6e 65 | 77 48 6e 64 6c 26 20 3d |ngth&.ne|wHndl& =|
|000023b0| 20 66 6e 20 46 42 4e 65 | 77 43 6f 6e 74 61 69 6e | fn FBNe|wContain|
|000023c0| 65 72 28 6c 65 6e 67 74 | 68 26 29 0d 63 50 74 72 |er(lengt|h&).cPtr|
|000023d0| 26 20 3d 20 5b 6e 65 77 | 48 6e 64 6c 26 5d 0d 62 |& = [new|Hndl&].b|
|000023e0| 6c 6f 63 6b 6d 6f 76 65 | 20 5b 63 74 6e 72 48 26 |lockmove| [ctnrH&|
|000023f0| 5d 2c 63 50 74 72 26 2c | 6c 65 6e 67 74 68 26 2f |],cPtr&,|length&/|
|00002400| 2f 20 43 6f 70 79 0d 6c | 65 6e 67 74 68 26 20 3d |/ Copy.l|ength& =|
|00002410| 20 6c 65 6e 67 74 68 26 | 20 2b 20 63 50 74 72 26 | length&| + cPtr&|
|00002420| 27 43 68 61 6e 67 65 64 | 20 7b 20 33 2f 31 33 2f |'Changed| { 3/13/|
|00002430| 30 31 20 7d 20 41 2e 47 | 2e 0d 77 68 69 6c 65 20 |01 } A.G|..while |
|00002440| 28 20 63 50 74 72 26 20 | 3c 20 6c 65 6e 67 74 68 |( cPtr& |< length|
|00002450| 26 20 29 0d 63 50 74 72 | 26 2e 6e 69 6c 60 60 20 |& ).cPtr|&.nil`` |
|00002460| 3d 20 67 46 42 55 70 70 | 65 72 43 68 61 72 28 63 |= gFBUpp|erChar(c|
|00002470| 50 74 72 26 2e 6e 69 6c | 60 60 29 0d 69 6e 63 28 |Ptr&.nil|``).inc(|
|00002480| 20 63 50 74 72 26 20 29 | 0d 77 65 6e 64 0d 65 6e | cPtr& )|.wend.en|
|00002490| 64 20 69 66 0d 26 20 40 | 67 46 42 54 65 6d 70 43 |d if.& @|gFBTempC|
|000024a0| 6f 6e 74 61 69 6e 65 72 | 2c 6e 65 77 48 6e 64 6c |ontainer|,newHndl|
|000024b0| 26 0d 45 4e 44 20 46 4e | 20 3d 20 40 20 67 46 42 |&.END FN| = @ gFB|
|000024c0| 54 65 6d 70 43 6f 6e 74 | 61 69 6e 65 72 0d 2f 2f |TempCont|ainer.//|
|000024d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 20 4d |--------|------ M|
|000024e0| 49 44 24 28 40 63 6f 6e | 74 61 69 6e 65 72 2c 70 |ID$(@con|tainer,p|
|000024f0| 6f 73 2c 6c 65 6e 29 20 | 3d 20 67 46 42 53 74 72 |os,len) |= gFBStr|
|00002500| 26 2e 46 42 53 74 72 41 | 63 63 24 20 2d 2d 2d 2d |&.FBStrA|cc$ ----|
|00002510| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2f 2f 0d 4c 4f 43 |--------|--//.LOC|
|00002520| 41 4c 0d 44 49 4d 20 69 | 26 2c 53 72 63 4c 65 6e |AL.DIM i|&,SrcLen|
|00002530| 26 2c 44 73 74 4c 65 6e | 26 2c 53 74 72 76 50 74 |&,DstLen|&,StrvPt|
|00002540| 72 26 0d 64 69 6d 20 73 | 72 63 43 68 61 72 26 2c |r&.dim s|rcChar&,|
|00002550| 63 74 6e 72 48 26 2c 73 | 63 72 53 69 7a 65 26 0d |ctnrH&,s|crSize&.|
|00002560| 64 69 6d 20 64 65 73 74 | 4f 66 66 73 65 74 26 2c |dim dest|Offset&,|
|00002570| 64 65 73 74 53 69 7a 65 | 26 0d 52 55 4e 54 49 4d |destSize|&.RUNTIM|
|00002580| 45 20 4d 69 64 53 74 6d | 74 5f 43 74 6e 72 28 63 |E MidStm|t_Ctnr(c|
|00002590| 74 6e 72 56 61 72 50 74 | 72 26 2c 70 6f 73 69 74 |tnrVarPt|r&,posit|
|000025a0| 69 6f 6e 26 2c 6c 65 6e | 67 74 68 26 29 0d 53 72 |ion&,len|gth&).Sr|
|000025b0| 63 4c 65 6e 26 20 3d 20 | 50 45 45 4b 28 67 46 42 |cLen& = |PEEK(gFB|
|000025c0| 53 74 72 26 29 0d 69 66 | 20 6c 65 6e 67 74 68 26 |Str&).if| length&|
|000025d0| 20 20 20 3c 20 30 20 74 | 68 65 6e 20 6c 65 6e 67 | < 0 t|hen leng|
|000025e0| 74 68 26 20 20 3d 20 53 | 72 63 4c 65 6e 26 0d 69 |th& = S|rcLen&.i|
|000025f0| 66 20 70 6f 73 69 74 69 | 6f 6e 26 20 3c 20 31 20 |f positi|on& < 1 |
|00002600| 74 68 65 6e 20 70 6f 73 | 69 74 69 6f 6e 26 20 3d |then pos|ition& =|
|00002610| 20 31 0d 63 74 6e 72 48 | 26 20 3d 20 63 74 6e 72 | 1.ctnrH|& = ctnr|
|00002620| 56 61 72 50 74 72 26 2e | 6e 69 6c 26 0d 6c 6f 6e |VarPtr&.|nil&.lon|
|00002630| 67 20 69 66 20 63 74 6e | 72 48 26 0d 53 74 72 76 |g if ctn|rH&.Strv|
|00002640| 50 74 72 26 20 3d 20 5b | 63 74 6e 72 48 26 5d 0d |Ptr& = [|ctnrH&].|
|00002650| 44 73 74 4c 65 6e 26 20 | 3d 20 66 6e 20 67 65 74 |DstLen& |= fn get|
|00002660| 68 61 6e 64 6c 65 73 69 | 7a 65 28 63 74 6e 72 48 |handlesi|ze(ctnrH|
|00002670| 26 29 0d 69 66 20 6c 65 | 6e 67 74 68 26 20 3e 20 |&).if le|ngth& > |
|00002680| 44 73 74 4c 65 6e 26 20 | 74 68 65 6e 20 6c 65 6e |DstLen& |then len|
|00002690| 67 74 68 26 20 3d 20 44 | 73 74 4c 65 6e 26 0d 69 |gth& = D|stLen&.i|
|000026a0| 66 20 6c 65 6e 67 74 68 | 26 20 3e 20 53 72 63 4c |f length|& > SrcL|
|000026b0| 65 6e 26 20 74 68 65 6e | 20 6c 65 6e 67 74 68 26 |en& then| length&|
|000026c0| 20 3d 20 53 72 63 4c 65 | 6e 26 0d 6c 6f 6e 67 20 | = SrcLe|n&.long |
|000026d0| 69 66 20 6c 65 6e 67 74 | 68 26 20 3e 20 30 0d 44 |if lengt|h& > 0.D|
|000026e0| 45 43 28 70 6f 73 69 74 | 69 6f 6e 26 29 0d 66 6f |EC(posit|ion&).fo|
|000026f0| 72 20 69 26 20 3d 20 31 | 20 74 6f 20 6c 65 6e 67 |r i& = 1| to leng|
|00002700| 74 68 26 0d 70 6f 6b 65 | 20 53 74 72 76 50 74 72 |th&.poke| StrvPtr|
|00002710| 26 2b 70 6f 73 69 74 69 | 6f 6e 26 2b 69 26 2d 31 |&+positi|on&+i&-1|
|00002720| 2c 50 45 45 4b 28 67 46 | 42 53 74 72 26 2b 69 26 |,PEEK(gF|BStr&+i&|
|00002730| 29 0d 6e 65 78 74 0d 65 | 6e 64 20 69 66 0d 65 6e |).next.e|nd if.en|
|00002740| 64 20 69 66 0d 45 4e 44 | 20 46 4e 2f 2f 0d 2f 2f |d if.END| FN//.//|
|00002750| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 20 4d |--------|------ M|
|00002760| 49 44 24 28 40 63 6f 6e | 74 61 69 6e 65 72 2c 70 |ID$(@con|tainer,p|
|00002770| 6f 73 2c 6c 65 6e 29 20 | 3d 20 63 6f 6e 74 61 69 |os,len) |= contai|
|00002780| 6e 65 72 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |ner ----|--------|
|00002790| 2d 2d 2f 2f 0d 4c 4f 43 | 41 4c 0d 64 69 6d 20 69 |--//.LOC|AL.dim i|
|000027a0| 26 2c 53 72 63 4c 65 6e | 26 2c 44 73 74 4c 65 6e |&,SrcLen|&,DstLen|
|000027b0| 26 2c 73 72 63 48 6e 64 | 6c 26 2c 63 74 6e 72 48 |&,srcHnd|l&,ctnrH|
|000027c0| 26 2c 53 74 72 76 50 74 | 72 26 0d 52 55 4e 54 49 |&,StrvPt|r&.RUNTI|
|000027d0| 4d 45 20 4d 69 64 53 74 | 6d 74 5f 43 74 6e 72 5f |ME MidSt|mt_Ctnr_|
|000027e0| 43 6e 74 72 28 63 74 6e | 72 56 61 72 50 74 72 26 |Cntr(ctn|rVarPtr&|
|000027f0| 2c 70 6f 73 69 74 69 6f | 6e 26 2c 6c 65 6e 67 74 |,positio|n&,lengt|
|00002800| 68 26 2c 73 72 63 43 74 | 6e 72 56 61 72 26 29 0d |h&,srcCt|nrVar&).|
|00002810| 73 72 63 48 6e 64 6c 26 | 20 3d 20 73 72 63 43 74 |srcHndl&| = srcCt|
|00002820| 6e 72 56 61 72 26 2e 6e | 69 6c 26 0d 6c 6f 6e 67 |nrVar&.n|il&.long|
|00002830| 20 69 66 20 73 72 63 48 | 6e 64 6c 26 0d 53 72 63 | if srcH|ndl&.Src|
|00002840| 4c 65 6e 26 20 3d 20 66 | 6e 20 67 65 74 68 61 6e |Len& = f|n gethan|
|00002850| 64 6c 65 73 69 7a 65 28 | 73 72 63 48 6e 64 6c 26 |dlesize(|srcHndl&|
|00002860| 29 0d 69 66 20 6c 65 6e | 67 74 68 26 20 20 20 3c |).if len|gth& <|
|00002870| 20 30 20 74 68 65 6e 20 | 6c 65 6e 67 74 68 26 20 | 0 then |length& |
|00002880| 20 3d 20 53 72 63 4c 65 | 6e 26 0d 69 66 20 70 6f | = SrcLe|n&.if po|
|00002890| 73 69 74 69 6f 6e 26 20 | 3c 20 31 20 74 68 65 6e |sition& |< 1 then|
|000028a0| 20 70 6f 73 69 74 69 6f | 6e 26 20 3d 20 31 0d 63 | positio|n& = 1.c|
|000028b0| 74 6e 72 48 26 20 3d 20 | 63 74 6e 72 56 61 72 50 |tnrH& = |ctnrVarP|
|000028c0| 74 72 26 2e 6e 69 6c 26 | 0d 6c 6f 6e 67 20 69 66 |tr&.nil&|.long if|
|000028d0| 20 63 74 6e 72 48 26 0d | 53 74 72 76 50 74 72 26 | ctnrH&.|StrvPtr&|
|000028e0| 20 3d 20 5b 63 74 6e 72 | 48 26 5d 0d 44 73 74 4c | = [ctnr|H&].DstL|
|000028f0| 65 6e 26 20 3d 20 66 6e | 20 67 65 74 68 61 6e 64 |en& = fn| gethand|
|00002900| 6c 65 73 69 7a 65 28 63 | 74 6e 72 48 26 29 0d 69 |lesize(c|tnrH&).i|
|00002910| 66 20 6c 65 6e 67 74 68 | 26 20 3e 20 44 73 74 4c |f length|& > DstL|
|00002920| 65 6e 26 20 74 68 65 6e | 20 6c 65 6e 67 74 68 26 |en& then| length&|
|00002930| 20 3d 20 44 73 74 4c 65 | 6e 26 0d 69 66 20 6c 65 | = DstLe|n&.if le|
|00002940| 6e 67 74 68 26 20 3e 20 | 53 72 63 4c 65 6e 26 20 |ngth& > |SrcLen& |
|00002950| 74 68 65 6e 20 6c 65 6e | 67 74 68 26 20 3d 20 53 |then len|gth& = S|
|00002960| 72 63 4c 65 6e 26 0d 6c | 6f 6e 67 20 69 66 20 6c |rcLen&.l|ong if l|
|00002970| 65 6e 67 74 68 26 20 3e | 20 30 0d 44 45 43 28 70 |ength& >| 0.DEC(p|
|00002980| 6f 73 69 74 69 6f 6e 26 | 29 0d 66 6f 72 20 69 26 |osition&|).for i&|
|00002990| 20 3d 20 31 20 74 6f 20 | 6c 65 6e 67 74 68 26 0d | = 1 to |length&.|
|000029a0| 70 6f 6b 65 20 53 74 72 | 76 50 74 72 26 2b 70 6f |poke Str|vPtr&+po|
|000029b0| 73 69 74 69 6f 6e 26 2b | 69 26 2d 31 2c 50 45 45 |sition&+|i&-1,PEE|
|000029c0| 4b 28 5b 73 72 63 48 6e | 64 6c 26 5d 2b 69 26 2d |K([srcHn|dl&]+i&-|
|000029d0| 31 29 0d 6e 65 78 74 0d | 65 6e 64 20 69 66 0d 65 |1).next.|end if.e|
|000029e0| 6e 64 20 69 66 0d 65 6e | 64 20 69 66 0d 45 4e 44 |nd if.en|d if.END|
|000029f0| 20 46 4e 2f 2f 0d 2f 2f | 0d 6c 6f 63 61 6c 27 4d | FN//.//|.local'M|
|00002a00| 6f 64 69 66 69 65 64 20 | 7b 20 35 2f 32 34 2f 30 |odified |{ 5/24/0|
|00002a10| 30 20 7d 20 41 2e 47 2e | 0d 64 69 6d 20 46 6f 75 |0 } A.G.|.dim Fou|
|00002a20| 6e 64 50 6f 73 26 2c 43 | 6d 70 4c 65 6e 26 0d 72 |ndPos&,C|mpLen&.r|
|00002a30| 75 6e 74 69 6d 65 20 49 | 6e 73 74 72 5f 43 74 6e |untime I|nstr_Ctn|
|00002a40| 72 28 70 6f 73 69 74 69 | 6f 6e 26 2c 42 69 67 43 |r(positi|on&,BigC|
|00002a50| 74 6e 72 56 61 72 50 74 | 72 26 2c 53 65 61 72 63 |tnrVarPt|r&,Searc|
|00002a60| 68 43 74 6e 72 56 61 72 | 50 74 72 26 29 0d 46 6f |hCtnrVar|Ptr&).Fo|
|00002a70| 75 6e 64 50 6f 73 26 20 | 3d 20 30 27 41 73 73 75 |undPos& |= 0'Assu|
|00002a80| 6d 65 20 4e 6f 74 20 46 | 6f 75 6e 64 0d 6c 6f 6e |me Not F|ound.lon|
|00002a90| 67 20 69 66 20 42 69 67 | 43 74 6e 72 56 61 72 50 |g if Big|CtnrVarP|
|00002aa0| 74 72 26 2e 6e 69 6c 26 | 0d 6c 6f 6e 67 20 69 66 |tr&.nil&|.long if|
|00002ab0| 20 53 65 61 72 63 68 43 | 74 6e 72 56 61 72 50 74 | SearchC|tnrVarPt|
|00002ac0| 72 26 2e 6e 69 6c 26 0d | 6c 6f 6e 67 20 69 66 20 |r&.nil&.|long if |
|00002ad0| 70 6f 73 69 74 69 6f 6e | 26 20 3e 3d 20 30 0d 43 |position|& >= 0.C|
|00002ae0| 6d 70 4c 65 6e 26 20 20 | 20 3d 20 66 6e 20 67 65 |mpLen& | = fn ge|
|00002af0| 74 68 61 6e 64 6c 65 73 | 69 7a 65 28 53 65 61 72 |thandles|ize(Sear|
|00002b00| 63 68 43 74 6e 72 56 61 | 72 50 74 72 26 2e 6e 69 |chCtnrVa|rPtr&.ni|
|00002b10| 6c 26 29 0d 46 6f 75 6e | 64 50 6f 73 26 20 3d 20 |l&).Foun|dPos& = |
|00002b20| 66 6e 20 6d 75 6e 67 65 | 72 28 42 69 67 43 74 6e |fn munge|r(BigCtn|
|00002b30| 72 56 61 72 50 74 72 26 | 2e 6e 69 6c 26 2c 70 6f |rVarPtr&|.nil&,po|
|00002b40| 73 69 74 69 6f 6e 26 2d | 31 2c 5b 53 65 61 72 63 |sition&-|1,[Searc|
|00002b50| 68 43 74 6e 72 56 61 72 | 50 74 72 26 2e 6e 69 6c |hCtnrVar|Ptr&.nil|
|00002b60| 26 5d 2c 43 6d 70 4c 65 | 6e 26 2c 30 2c 30 29 0d |&],CmpLe|n&,0,0).|
|00002b70| 69 66 20 46 6f 75 6e 64 | 50 6f 73 26 20 3c 20 30 |if Found|Pos& < 0|
|00002b80| 20 74 68 65 6e 20 46 6f | 75 6e 64 50 6f 73 26 20 | then Fo|undPos& |
|00002b90| 3d 20 30 20 65 6c 73 65 | 20 69 6e 63 28 46 6f 75 |= 0 else| inc(Fou|
|00002ba0| 6e 64 50 6f 73 26 29 0d | 65 6e 64 20 69 66 0d 65 |ndPos&).|end if.e|
|00002bb0| 6e 64 20 69 66 0d 65 6e | 64 20 69 66 0d 65 6e 64 |nd if.en|d if.end|
|00002bc0| 20 66 6e 20 3d 20 46 6f | 75 6e 64 50 6f 73 26 0d | fn = Fo|undPos&.|
|00002bd0| 2f 2f 0d 6c 6f 63 61 6c | 27 43 68 61 6e 67 65 64 |//.local|'Changed|
|00002be0| 20 7b 20 33 2f 32 36 2f | 30 31 20 7d 20 41 2e 47 | { 3/26/|01 } A.G|
|00002bf0| 2e 0d 64 69 6d 20 46 6f | 75 6e 64 50 6f 73 26 2c |..dim Fo|undPos&,|
|00002c00| 43 6d 70 4c 65 6e 26 0d | 72 75 6e 74 69 6d 65 20 |CmpLen&.|runtime |
|00002c10| 49 6e 73 74 72 5f 43 74 | 6e 72 5f 50 53 74 72 28 |Instr_Ct|nr_PStr(|
|00002c20| 70 6f 73 69 74 69 6f 6e | 26 2c 42 69 67 43 74 6e |position|&,BigCtn|
|00002c30| 72 56 61 72 50 74 72 26 | 29 0d 67 46 42 53 74 72 |rVarPtr&|).gFBStr|
|00002c40| 26 20 3d 20 67 46 42 53 | 74 72 26 20 2d 20 32 35 |& = gFBS|tr& - 25|
|00002c50| 36 2f 2f 50 6f 70 20 53 | 74 72 69 6e 67 27 43 68 |6//Pop S|tring'Ch|
|00002c60| 61 6e 67 65 64 3a 27 43 | 68 61 6e 67 65 64 20 7b |anged:'C|hanged {|
|00002c70| 20 33 2f 32 36 2f 30 31 | 20 7d 20 41 2e 47 2e 0d | 3/26/01| } A.G..|
|00002c80| 46 6f 75 6e 64 50 6f 73 | 26 20 3d 20 30 27 41 73 |FoundPos|& = 0'As|
|00002c90| 73 75 6d 65 20 4e 6f 74 | 20 46 6f 75 6e 64 0d 6c |sume Not| Found.l|
|00002ca0| 6f 6e 67 20 69 66 20 42 | 69 67 43 74 6e 72 56 61 |ong if B|igCtnrVa|
|00002cb0| 72 50 74 72 26 2e 6e 69 | 6c 26 0d 6c 6f 6e 67 20 |rPtr&.ni|l&.long |
|00002cc0| 69 66 20 70 6f 73 69 74 | 69 6f 6e 26 20 3e 3d 20 |if posit|ion& >= |
|00002cd0| 30 0d 46 6f 75 6e 64 50 | 6f 73 26 20 3d 20 66 6e |0.FoundP|os& = fn|
|00002ce0| 20 6d 75 6e 67 65 72 28 | 42 69 67 43 74 6e 72 56 | munger(|BigCtnrV|
|00002cf0| 61 72 50 74 72 26 2e 6e | 69 6c 26 2c 70 6f 73 69 |arPtr&.n|il&,posi|
|00002d00| 74 69 6f 6e 26 2d 31 2c | 67 46 42 53 74 72 26 2b |tion&-1,|gFBStr&+|
|00002d10| 31 2c 7c 67 46 42 53 74 | 72 26 7c 2c 30 2c 30 29 |1,|gFBSt|r&|,0,0)|
|00002d20| 0d 69 66 20 46 6f 75 6e | 64 50 6f 73 26 20 3c 20 |.if Foun|dPos& < |
|00002d30| 30 20 74 68 65 6e 20 46 | 6f 75 6e 64 50 6f 73 26 |0 then F|oundPos&|
|00002d40| 20 3d 20 30 20 65 6c 73 | 65 20 69 6e 63 28 46 6f | = 0 els|e inc(Fo|
|00002d50| 75 6e 64 50 6f 73 26 29 | 0d 65 6e 64 20 69 66 0d |undPos&)|.end if.|
|00002d60| 65 6e 64 20 69 66 0d 65 | 6e 64 20 66 6e 20 3d 20 |end if.e|nd fn = |
|00002d70| 46 6f 75 6e 64 50 6f 73 | 26 0d 2f 2f 0d 72 75 6e |FoundPos|&.//.run|
|00002d80| 74 69 6d 65 20 41 64 64 | 43 74 6e 72 73 28 63 74 |time Add|Ctnrs(ct|
|00002d90| 6e 72 56 31 50 74 72 26 | 2c 63 74 6e 72 56 32 50 |nrV1Ptr&|,ctnrV2P|
|00002da0| 74 72 26 29 0d 64 69 6d | 20 63 74 6e 72 48 31 26 |tr&).dim| ctnrH1&|
|00002db0| 2c 63 74 6e 72 48 32 26 | 2c 73 69 7a 65 31 26 2c |,ctnrH2&|,size1&,|
|00002dc0| 73 69 7a 65 32 26 2c 65 | 72 72 0d 63 74 6e 72 48 |size2&,e|rr.ctnrH|
|00002dd0| 32 26 20 20 3d 20 20 63 | 74 6e 72 56 32 50 74 72 |2& = c|tnrV2Ptr|
|00002de0| 26 2e 6e 69 6c 26 0d 6c | 6f 6e 67 20 69 66 20 63 |&.nil&.l|ong if c|
|00002df0| 74 6e 72 48 32 26 2f 2f | 4e 6f 74 68 69 6e 67 20 |tnrH2&//|Nothing |
|00002e00| 74 6f 20 61 64 64 2e 2e | 2e 0d 69 66 20 63 74 6e |to add..|..if ctn|
|00002e10| 72 56 31 50 74 72 26 2e | 6e 69 6c 26 20 3d 3d 20 |rV1Ptr&.|nil& == |
|00002e20| 30 20 74 68 65 6e 20 63 | 74 6e 72 56 31 50 74 72 |0 then c|tnrV1Ptr|
|00002e30| 26 2e 6e 69 6c 26 20 3d | 20 66 6e 20 6e 65 77 68 |&.nil& =| fn newh|
|00002e40| 61 6e 64 6c 65 28 30 29 | 27 43 68 61 6e 67 65 64 |andle(0)|'Changed|
|00002e50| 20 7b 20 31 2f 39 2f 30 | 31 20 7d 20 41 2e 47 2e | { 1/9/0|1 } A.G.|
|00002e60| 0d 63 74 6e 72 48 31 26 | 20 20 3d 20 20 63 74 6e |.ctnrH1&| = ctn|
|00002e70| 72 56 31 50 74 72 26 2e | 6e 69 6c 26 0d 6c 6f 6e |rV1Ptr&.|nil&.lon|
|00002e80| 67 20 69 66 20 63 74 6e | 72 48 31 26 0d 73 69 7a |g if ctn|rH1&.siz|
|00002e90| 65 31 26 20 3d 20 66 6e | 20 67 65 74 68 61 6e 64 |e1& = fn| gethand|
|00002ea0| 6c 65 73 69 7a 65 28 63 | 74 6e 72 48 31 26 29 0d |lesize(c|tnrH1&).|
|00002eb0| 73 69 7a 65 32 26 20 3d | 20 66 6e 20 67 65 74 68 |size2& =| fn geth|
|00002ec0| 61 6e 64 6c 65 73 69 7a | 65 28 63 74 6e 72 48 32 |andlesiz|e(ctnrH2|
|00002ed0| 26 29 0d 73 65 74 68 61 | 6e 64 6c 65 73 69 7a 65 |&).setha|ndlesize|
|00002ee0| 28 63 74 6e 72 48 31 26 | 2c 73 69 7a 65 31 26 2b |(ctnrH1&|,size1&+|
|00002ef0| 73 69 7a 65 32 26 29 0d | 66 6e 20 46 42 43 74 6e |size2&).|fn FBCtn|
|00002f00| 72 43 68 65 63 6b 4d 65 | 6d 45 72 72 28 30 2c 22 |rCheckMe|mErr(0,"|
|00002f10| 69 6e 20 41 64 64 43 74 | 6e 72 73 22 29 0d 62 6c |in AddCt|nrs").bl|
|00002f20| 6f 63 6b 6d 6f 76 65 20 | 5b 63 74 6e 72 48 32 26 |ockmove |[ctnrH2&|
|00002f30| 5d 2c 5b 63 74 6e 72 48 | 31 26 5d 2b 73 69 7a 65 |],[ctnrH|1&]+size|
|00002f40| 31 26 2c 73 69 7a 65 32 | 26 27 44 61 74 65 20 7b |1&,size2|&'Date {|
|00002f50| 20 33 2f 31 35 2f 30 32 | 20 7d 0d 78 65 6c 73 65 | 3/15/02| }.xelse|
|00002f60| 0d 63 74 6e 72 48 31 26 | 20 3d 20 63 74 6e 72 48 |.ctnrH1&| = ctnrH|
|00002f70| 32 26 0d 65 72 72 20 3d | 20 66 6e 20 68 61 6e 64 |2&.err =| fn hand|
|00002f80| 74 6f 68 61 6e 64 28 63 | 74 6e 72 56 31 50 74 72 |tohand(c|tnrV1Ptr|
|00002f90| 26 2e 6e 69 6c 26 29 27 | 63 6f 70 79 20 74 68 65 |&.nil&)'|copy the|
|00002fa0| 20 68 6e 64 6c 0d 66 6e | 20 46 42 43 74 6e 72 43 | hndl.fn| FBCtnrC|
|00002fb0| 68 65 63 6b 4d 65 6d 45 | 72 72 28 65 72 72 2c 22 |heckMemE|rr(err,"|
|00002fc0| 69 6e 20 41 64 64 43 74 | 6e 72 73 20 32 22 29 0d |in AddCt|nrs 2").|
|00002fd0| 65 6e 64 20 69 66 0d 66 | 6e 20 46 42 43 74 6e 72 |end if.f|n FBCtnr|
|00002fe0| 43 68 65 63 6b 4d 65 6d | 45 72 72 28 30 2c 22 69 |CheckMem|Err(0,"i|
|00002ff0| 6e 20 41 64 64 43 74 6e | 72 73 20 33 22 29 0d 65 |n AddCtn|rs 3").e|
|00003000| 6e 64 20 69 66 0d 65 6e | 64 20 66 6e 0d 2f 2f 0d |nd if.en|d fn.//.|
|00003010| 72 75 6e 74 69 6d 65 20 | 41 64 64 53 74 72 69 6e |runtime |AddStrin|
|00003020| 67 54 6f 43 74 6e 72 28 | 63 74 6e 72 56 61 72 50 |gToCtnr(|ctnrVarP|
|00003030| 74 72 26 29 0d 64 69 6d | 20 63 74 6e 72 48 26 2c |tr&).dim| ctnrH&,|
|00003040| 73 69 7a 65 31 26 2c 73 | 69 7a 65 32 26 2c 65 72 |size1&,s|ize2&,er|
|00003050| 72 0d 6c 6f 6e 67 20 69 | 66 20 63 74 6e 72 56 61 |r.long i|f ctnrVa|
|00003060| 72 50 74 72 26 20 3c 3e | 20 40 67 46 42 54 65 6d |rPtr& <>| @gFBTem|
|00003070| 70 43 6f 6e 74 61 69 6e | 65 72 0d 64 65 66 20 64 |pContain|er.def d|
|00003080| 69 73 70 6f 73 65 68 28 | 67 46 42 54 65 6d 70 43 |isposeh(|gFBTempC|
|00003090| 6f 6e 74 61 69 6e 65 72 | 29 0d 65 6e 64 20 69 66 |ontainer|).end if|
|000030a0| 0d 63 74 6e 72 48 26 20 | 20 3d 20 20 63 74 6e 72 |.ctnrH& | = ctnr|
|000030b0| 56 61 72 50 74 72 26 2e | 6e 69 6c 26 0d 73 69 7a |VarPtr&.|nil&.siz|
|000030c0| 65 32 26 20 3d 20 7c 67 | 46 42 53 74 72 26 7c 0d |e2& = |g|FBStr&|.|
|000030d0| 6c 6f 6e 67 20 69 66 20 | 73 69 7a 65 32 26 0d 6c |long if |size2&.l|
|000030e0| 6f 6e 67 20 69 66 20 63 | 74 6e 72 48 26 20 3d 20 |ong if c|tnrH& = |
|000030f0| 30 0d 73 69 7a 65 31 26 | 20 3d 20 30 0d 63 74 6e |0.size1&| = 0.ctn|
|00003100| 72 48 26 20 3d 20 66 6e | 20 46 42 4e 65 77 43 6f |rH& = fn| FBNewCo|
|00003110| 6e 74 61 69 6e 65 72 28 | 73 69 7a 65 32 26 29 0d |ntainer(|size2&).|
|00003120| 63 74 6e 72 56 61 72 50 | 74 72 26 2e 6e 69 6c 26 |ctnrVarP|tr&.nil&|
|00003130| 20 3d 20 63 74 6e 72 48 | 26 0d 78 65 6c 73 65 0d | = ctnrH|&.xelse.|
|00003140| 73 69 7a 65 31 26 20 3d | 20 66 6e 20 67 65 74 68 |size1& =| fn geth|
|00003150| 61 6e 64 6c 65 73 69 7a | 65 28 63 74 6e 72 48 26 |andlesiz|e(ctnrH&|
|00003160| 29 0d 73 65 74 68 61 6e | 64 6c 65 73 69 7a 65 28 |).sethan|dlesize(|
|00003170| 63 74 6e 72 48 26 2c 73 | 69 7a 65 31 26 2b 73 69 |ctnrH&,s|ize1&+si|
|00003180| 7a 65 32 26 29 0d 66 6e | 20 46 42 43 74 6e 72 43 |ze2&).fn| FBCtnrC|
|00003190| 68 65 63 6b 4d 65 6d 45 | 72 72 28 30 2c 22 69 6e |heckMemE|rr(0,"in|
|000031a0| 20 41 64 64 53 74 72 69 | 6e 67 54 6f 43 74 6e 72 | AddStri|ngToCtnr|
|000031b0| 22 29 0d 65 6e 64 20 69 | 66 0d 62 6c 6f 63 6b 6d |").end i|f.blockm|
|000031c0| 6f 76 65 20 67 46 42 53 | 74 72 26 2b 31 2c 5b 63 |ove gFBS|tr&+1,[c|
|000031d0| 74 6e 72 48 26 5d 2b 73 | 69 7a 65 31 26 2c 73 69 |tnrH&]+s|ize1&,si|
|000031e0| 7a 65 32 26 0d 65 6e 64 | 20 69 66 0d 65 6e 64 20 |ze2&.end| if.end |
|000031f0| 66 6e 0d 2f 2f 0d 2f 2f | 27 43 68 61 6e 67 65 64 |fn.//.//|'Changed|
|00003200| 20 7b 20 34 2f 31 39 2f | 30 31 20 7d 20 41 2e 47 | { 4/19/|01 } A.G|
|00003210| 2e 0d 2f 2f 0d 72 75 6e | 74 69 6d 65 20 43 74 6e |..//.run|time Ctn|
|00003220| 72 41 64 64 43 74 6e 72 | 28 63 74 6e 72 56 31 50 |rAddCtnr|(ctnrV1P|
|00003230| 74 72 26 2c 63 74 6e 72 | 56 32 50 74 72 26 29 0d |tr&,ctnr|V2Ptr&).|
|00003240| 64 69 6d 20 40 6e 65 77 | 48 6e 64 6c 26 0d 64 69 |dim @new|Hndl&.di|
|00003250| 6d 20 63 74 6e 72 48 31 | 26 2c 63 74 6e 72 48 32 |m ctnrH1|&,ctnrH2|
|00003260| 26 2c 73 69 7a 65 31 26 | 2c 73 69 7a 65 32 26 2c |&,size1&|,size2&,|
|00003270| 65 72 72 0d 6c 6f 6e 67 | 20 69 66 20 63 74 6e 72 |err.long| if ctnr|
|00003280| 56 31 50 74 72 26 20 3c | 3e 20 40 67 46 42 54 65 |V1Ptr& <|> @gFBTe|
|00003290| 6d 70 43 6f 6e 74 61 69 | 6e 65 72 20 61 6e 64 20 |mpContai|ner and |
|000032a0| 63 74 6e 72 56 32 50 74 | 72 26 20 3c 3e 20 40 67 |ctnrV2Pt|r& <> @g|
|000032b0| 46 42 54 65 6d 70 43 6f | 6e 74 61 69 6e 65 72 0d |FBTempCo|ntainer.|
|000032c0| 64 65 66 20 64 69 73 70 | 6f 73 65 68 28 67 46 42 |def disp|oseh(gFB|
|000032d0| 54 65 6d 70 43 6f 6e 74 | 61 69 6e 65 72 29 0d 65 |TempCont|ainer).e|
|000032e0| 6e 64 20 69 66 0d 63 74 | 6e 72 48 32 26 20 20 3d |nd if.ct|nrH2& =|
|000032f0| 20 20 63 74 6e 72 56 32 | 50 74 72 26 2e 6e 69 6c | ctnrV2|Ptr&.nil|
|00003300| 26 0d 6e 65 77 48 6e 64 | 6c 26 20 3d 20 30 0d 6c |&.newHnd|l& = 0.l|
|00003310| 6f 6e 67 20 69 66 20 63 | 74 6e 72 48 32 26 2f 2f |ong if c|tnrH2&//|
|00003320| 4e 6f 74 68 69 6e 67 20 | 74 6f 20 61 64 64 2e 2e |Nothing |to add..|
|00003330| 2e 0d 69 66 20 63 74 6e | 72 56 31 50 74 72 26 2e |..if ctn|rV1Ptr&.|
|00003340| 6e 69 6c 26 20 3d 3d 20 | 30 20 74 68 65 6e 20 63 |nil& == |0 then c|
|00003350| 74 6e 72 56 31 50 74 72 | 26 2e 6e 69 6c 26 20 3d |tnrV1Ptr|&.nil& =|
|00003360| 20 66 6e 20 6e 65 77 68 | 61 6e 64 6c 65 28 30 29 | fn newh|andle(0)|
|00003370| 27 43 68 61 6e 67 65 64 | 20 7b 20 31 2f 39 2f 30 |'Changed| { 1/9/0|
|00003380| 31 20 7d 20 41 2e 47 2e | 0d 63 74 6e 72 48 31 26 |1 } A.G.|.ctnrH1&|
|00003390| 20 20 3d 20 20 63 74 6e | 72 56 31 50 74 72 26 2e | = ctn|rV1Ptr&.|
|000033a0| 6e 69 6c 26 0d 6c 6f 6e | 67 20 69 66 20 63 74 6e |nil&.lon|g if ctn|
|000033b0| 72 48 31 26 0d 73 69 7a | 65 31 26 20 3d 20 66 6e |rH1&.siz|e1& = fn|
|000033c0| 20 67 65 74 68 61 6e 64 | 6c 65 73 69 7a 65 28 63 | gethand|lesize(c|
|000033d0| 74 6e 72 48 31 26 29 0d | 73 69 7a 65 32 26 20 3d |tnrH1&).|size2& =|
|000033e0| 20 66 6e 20 67 65 74 68 | 61 6e 64 6c 65 73 69 7a | fn geth|andlesiz|
|000033f0| 65 28 63 74 6e 72 48 32 | 26 29 0d 6e 65 77 48 6e |e(ctnrH2|&).newHn|
|00003400| 64 6c 26 20 3d 20 66 6e | 20 46 42 4e 65 77 43 6f |dl& = fn| FBNewCo|
|00003410| 6e 74 61 69 6e 65 72 28 | 73 69 7a 65 31 26 2b 73 |ntainer(|size1&+s|
|00003420| 69 7a 65 32 26 29 0d 62 | 6c 6f 63 6b 6d 6f 76 65 |ize2&).b|lockmove|
|00003430| 20 5b 63 74 6e 72 48 31 | 26 5d 2c 5b 6e 65 77 48 | [ctnrH1|&],[newH|
|00003440| 6e 64 6c 26 5d 2c 73 69 | 7a 65 31 26 0d 62 6c 6f |ndl&],si|ze1&.blo|
|00003450| 63 6b 6d 6f 76 65 20 5b | 63 74 6e 72 48 32 26 5d |ckmove [|ctnrH2&]|
|00003460| 2c 5b 6e 65 77 48 6e 64 | 6c 26 5d 2b 73 69 7a 65 |,[newHnd|l&]+size|
|00003470| 31 26 2c 73 69 7a 65 32 | 26 0d 78 65 6c 73 65 0d |1&,size2|&.xelse.|
|00003480| 6e 65 77 48 6e 64 6c 26 | 20 3d 20 63 74 6e 72 48 |newHndl&| = ctnrH|
|00003490| 32 26 0d 65 72 72 20 3d | 20 66 6e 20 68 61 6e 64 |2&.err =| fn hand|
|000034a0| 74 6f 68 61 6e 64 28 6e | 65 77 48 6e 64 6c 26 29 |tohand(n|ewHndl&)|
|000034b0| 27 63 6f 70 79 20 74 68 | 65 20 68 6e 64 6c 0d 66 |'copy th|e hndl.f|
|000034c0| 6e 20 46 42 43 74 6e 72 | 43 68 65 63 6b 4d 65 6d |n FBCtnr|CheckMem|
|000034d0| 45 72 72 28 65 72 72 2c | 22 69 6e 20 43 74 6e 72 |Err(err,|"in Ctnr|
|000034e0| 41 64 64 43 74 6e 72 20 | 28 31 29 22 29 0d 65 6e |AddCtnr |(1)").en|
|000034f0| 64 20 69 66 0d 78 65 6c | 73 65 0d 6c 6f 6e 67 20 |d if.xel|se.long |
|00003500| 69 66 20 63 74 6e 72 56 | 31 50 74 72 26 2e 6e 69 |if ctnrV|1Ptr&.ni|
|00003510| 6c 26 27 43 68 61 6e 67 | 65 64 20 7b 20 35 2f 39 |l&'Chang|ed { 5/9|
|00003520| 2f 30 31 20 7d 20 41 2e | 47 2e 0d 6e 65 77 48 6e |/01 } A.|G..newHn|
|00003530| 64 6c 26 20 3d 20 63 74 | 6e 72 56 31 50 74 72 26 |dl& = ct|nrV1Ptr&|
|00003540| 2e 6e 69 6c 26 0d 65 72 | 72 20 3d 20 66 6e 20 68 |.nil&.er|r = fn h|
|00003550| 61 6e 64 74 6f 68 61 6e | 64 28 6e 65 77 48 6e 64 |andtohan|d(newHnd|
|00003560| 6c 26 29 27 63 6f 70 79 | 20 74 68 65 20 68 6e 64 |l&)'copy| the hnd|
|00003570| 6c 0d 66 6e 20 46 42 43 | 74 6e 72 43 68 65 63 6b |l.fn FBC|tnrCheck|
|00003580| 4d 65 6d 45 72 72 28 65 | 72 72 2c 22 69 6e 20 43 |MemErr(e|rr,"in C|
|00003590| 74 6e 72 41 64 64 43 74 | 6e 72 20 28 33 29 22 29 |tnrAddCt|nr (3)")|
|000035a0| 0d 2f 2f 2f 69 66 20 65 | 72 72 20 74 68 65 6e 20 |.///if e|rr then |
|000035b0| 73 74 6f 70 20 22 4f 75 | 74 20 6f 66 20 6d 65 6d |stop "Ou|t of mem|
|000035c0| 6f 72 79 20 61 64 64 69 | 6e 67 20 50 53 74 72 20 |ory addi|ng PStr |
|000035d0| 74 6f 20 43 6f 6e 74 61 | 69 6e 65 72 20 28 32 29 |to Conta|iner (2)|
|000035e0| 22 0d 65 6e 64 20 69 66 | 27 43 68 61 6e 67 65 64 |".end if|'Changed|
|000035f0| 20 7b 20 35 2f 39 2f 30 | 31 20 7d 20 41 2e 47 2e | { 5/9/0|1 } A.G.|
|00003600| 0d 65 6e 64 20 69 66 0d | 26 20 40 67 46 42 54 65 |.end if.|& @gFBTe|
|00003610| 6d 70 43 6f 6e 74 61 69 | 6e 65 72 2c 20 6e 65 77 |mpContai|ner, new|
|00003620| 48 6e 64 6c 26 0d 0d 65 | 6e 64 20 66 6e 20 3d 20 |Hndl&..e|nd fn = |
|00003630| 40 20 67 46 42 54 65 6d | 70 43 6f 6e 74 61 69 6e |@ gFBTem|pContain|
|00003640| 65 72 0d 2f 2f 0d 2f 2f | 27 43 68 61 6e 67 65 64 |er.//.//|'Changed|
|00003650| 20 7b 20 34 2f 31 39 2f | 30 31 20 7d 20 41 2e 47 | { 4/19/|01 } A.G|
|00003660| 2e 0d 2f 2f 0d 72 75 6e | 74 69 6d 65 20 43 74 6e |..//.run|time Ctn|
|00003670| 72 41 64 64 46 6c 6f 61 | 74 28 63 74 6e 72 56 61 |rAddFloa|t(ctnrVa|
|00003680| 72 50 74 72 26 29 0d 64 | 69 6d 20 74 65 6d 70 23 |rPtr&).d|im temp#|
|00003690| 0d 74 65 6d 70 23 20 3d | 20 66 6c 6f 61 74 61 63 |.temp# =| floatac|
|000036a0| 63 0d 64 69 6d 20 74 31 | 24 2c 74 32 24 0d 66 6e |c.dim t1|$,t2$.fn|
|000036b0| 20 67 65 74 43 74 6e 72 | 53 74 72 69 6e 67 28 63 | getCtnr|String(c|
|000036c0| 74 6e 72 56 61 72 50 74 | 72 26 2e 6e 69 6c 26 2c |tnrVarPt|r&.nil&,|
|000036d0| 74 31 24 29 0d 65 6e 64 | 20 66 6e 20 3d 20 76 61 |t1$).end| fn = va|
|000036e0| 6c 28 74 31 24 29 2b 74 | 65 6d 70 23 0d 2f 2f 0d |l(t1$)+t|emp#.//.|
|000036f0| 2f 2f 27 43 68 61 6e 67 | 65 64 20 7b 20 34 2f 31 |//'Chang|ed { 4/1|
|00003700| 39 2f 30 31 20 7d 20 41 | 2e 47 2e 0d 2f 2f 0d 72 |9/01 } A|.G..//.r|
|00003710| 75 6e 74 69 6d 65 20 43 | 74 6e 72 41 64 64 50 53 |untime C|tnrAddPS|
|00003720| 74 72 28 63 74 6e 72 56 | 61 72 50 74 72 26 29 0d |tr(ctnrV|arPtr&).|
|00003730| 64 69 6d 20 40 6e 65 77 | 48 6e 64 6c 26 0d 64 69 |dim @new|Hndl&.di|
|00003740| 6d 20 65 72 72 0d 6e 65 | 77 48 6e 64 6c 26 20 3d |m err.ne|wHndl& =|
|00003750| 20 30 0d 64 69 6d 20 63 | 74 6e 72 48 26 2c 73 69 | 0.dim c|tnrH&,si|
|00003760| 7a 65 31 26 2c 73 69 7a | 65 32 26 0d 6c 6f 6e 67 |ze1&,siz|e2&.long|
|00003770| 20 69 66 20 63 74 6e 72 | 56 61 72 50 74 72 26 20 | if ctnr|VarPtr& |
|00003780| 3c 3e 20 40 67 46 42 54 | 65 6d 70 43 6f 6e 74 61 |<> @gFBT|empConta|
|00003790| 69 6e 65 72 0d 64 65 66 | 20 64 69 73 70 6f 73 65 |iner.def| dispose|
|000037a0| 68 28 67 46 42 54 65 6d | 70 43 6f 6e 74 61 69 6e |h(gFBTem|pContain|
|000037b0| 65 72 29 0d 65 6e 64 20 | 69 66 0d 0d 63 74 6e 72 |er).end |if..ctnr|
|000037c0| 48 26 20 3d 20 63 74 6e | 72 56 61 72 50 74 72 26 |H& = ctn|rVarPtr&|
|000037d0| 2e 6e 69 6c 26 0d 73 69 | 7a 65 32 26 20 3d 20 7c |.nil&.si|ze2& = ||
|000037e0| 67 46 42 53 74 72 26 7c | 0d 0d 6c 6f 6e 67 20 69 |gFBStr&||..long i|
|000037f0| 66 20 73 69 7a 65 32 26 | 0d 6c 6f 6e 67 20 69 66 |f size2&|.long if|
|00003800| 20 63 74 6e 72 48 26 20 | 3d 20 30 0d 73 69 7a 65 | ctnrH& |= 0.size|
|00003810| 31 26 20 3d 20 30 0d 78 | 65 6c 73 65 0d 73 69 7a |1& = 0.x|else.siz|
|00003820| 65 31 26 20 3d 20 66 6e | 20 67 65 74 68 61 6e 64 |e1& = fn| gethand|
|00003830| 6c 65 73 69 7a 65 28 63 | 74 6e 72 48 26 29 0d 65 |lesize(c|tnrH&).e|
|00003840| 6e 64 20 69 66 0d 6e 65 | 77 48 6e 64 6c 26 20 3d |nd if.ne|wHndl& =|
|00003850| 20 66 6e 20 46 42 4e 65 | 77 43 6f 6e 74 61 69 6e | fn FBNe|wContain|
|00003860| 65 72 28 73 69 7a 65 31 | 26 2b 73 69 7a 65 32 26 |er(size1|&+size2&|
|00003870| 29 0d 6c 6f 6e 67 20 69 | 66 20 66 6e 20 6d 65 6d |).long i|f fn mem|
|00003880| 65 72 72 6f 72 0d 73 68 | 75 74 64 6f 77 6e 20 22 |error.sh|utdown "|
|00003890| 4f 75 74 20 6f 66 20 6d | 65 6d 6f 72 79 20 69 6e |Out of m|emory in|
|000038a0| 20 41 64 64 69 6e 67 20 | 63 6f 6e 74 61 69 6e 65 | Adding |containe|
|000038b0| 72 20 28 35 29 22 0d 65 | 6e 64 20 69 66 0d 69 66 |r (5)".e|nd if.if|
|000038c0| 20 73 69 7a 65 31 26 20 | 74 68 65 6e 20 62 6c 6f | size1& |then blo|
|000038d0| 63 6b 6d 6f 76 65 20 5b | 63 74 6e 72 48 26 5d 2c |ckmove [|ctnrH&],|
|000038e0| 5b 6e 65 77 48 6e 64 6c | 26 5d 2c 73 69 7a 65 31 |[newHndl|&],size1|
|000038f0| 26 0d 62 6c 6f 63 6b 6d | 6f 76 65 20 67 46 42 53 |&.blockm|ove gFBS|
|00003900| 74 72 26 2b 31 2c 5b 6e | 65 77 48 6e 64 6c 26 5d |tr&+1,[n|ewHndl&]|
|00003910| 2b 73 69 7a 65 31 26 2c | 73 69 7a 65 32 26 0d 78 |+size1&,|size2&.x|
|00003920| 65 6c 73 65 0d 6e 65 77 | 48 6e 64 6c 26 20 3d 20 |else.new|Hndl& = |
|00003930| 63 74 6e 72 48 26 0d 69 | 66 20 6e 65 77 48 6e 64 |ctnrH&.i|f newHnd|
|00003940| 6c 26 20 74 68 65 6e 20 | 65 72 72 20 3d 20 66 6e |l& then |err = fn|
|00003950| 20 48 61 6e 64 54 6f 48 | 61 6e 64 28 6e 65 77 48 | HandToH|and(newH|
|00003960| 6e 64 6c 26 29 27 43 68 | 61 6e 67 65 64 20 7b 20 |ndl&)'Ch|anged { |
|00003970| 35 2f 38 2f 30 31 20 7d | 20 41 2e 47 2e 0d 69 66 |5/8/01 }| A.G..if|
|00003980| 20 65 72 72 20 74 68 65 | 6e 20 73 74 6f 70 20 22 | err the|n stop "|
|00003990| 4f 75 74 20 6f 66 20 6d | 65 6d 6f 72 79 20 61 64 |Out of m|emory ad|
|000039a0| 64 69 6e 67 20 50 53 74 | 72 20 74 6f 20 43 6f 6e |ding PSt|r to Con|
|000039b0| 74 61 69 6e 65 72 22 0d | 65 6e 64 20 69 66 0d 26 |tainer".|end if.&|
|000039c0| 20 40 67 46 42 54 65 6d | 70 43 6f 6e 74 61 69 6e | @gFBTem|pContain|
|000039d0| 65 72 2c 20 6e 65 77 48 | 6e 64 6c 26 0d 65 6e 64 |er, newH|ndl&.end|
|000039e0| 20 66 6e 20 3d 20 40 20 | 67 46 42 54 65 6d 70 43 | fn = @ |gFBTempC|
|000039f0| 6f 6e 74 61 69 6e 65 72 | 0d 2f 2f 0d 2f 2f 20 20 |ontainer|.//.// |
|00003a00| 20 20 20 52 65 74 75 72 | 6e 73 20 30 20 20 69 66 | Retur|ns 0 if|
|00003a10| 20 65 71 75 61 6c 20 6c | 65 6e 67 74 68 20 61 6e | equal l|ength an|
|00003a20| 64 20 62 79 74 65 73 0d | 2f 2f 20 20 20 20 20 52 |d bytes.|// R|
|00003a30| 65 74 75 72 6e 73 20 2b | 6e 20 69 66 20 31 73 74 |eturns +|n if 1st|
|00003a40| 20 68 61 6e 64 6c 65 20 | 3e 20 32 6e 20 68 61 6e | handle |> 2n han|
|00003a50| 64 6c 65 0d 2f 2f 20 20 | 20 20 20 52 65 74 75 72 |dle.// | Retur|
|00003a60| 6e 73 20 2d 6e 20 69 66 | 20 31 73 74 20 68 61 6e |ns -n if| 1st han|
|00003a70| 64 6c 65 20 3c 20 32 6e | 20 68 61 6e 64 6c 65 0d |dle < 2n| handle.|
|00003a80| 2f 2f 0d 6c 6f 63 61 6c | 20 66 6e 20 46 42 43 6f |//.local| fn FBCo|
|00003a90| 6d 70 61 72 65 48 61 6e | 64 6c 65 73 28 68 31 26 |mpareHan|dles(h1&|
|00003aa0| 2c 68 32 26 29 0d 64 69 | 6d 20 63 31 50 74 72 26 |,h2&).di|m c1Ptr&|
|00003ab0| 2c 63 32 50 74 72 26 2c | 65 31 50 74 72 26 2c 43 |,c2Ptr&,|e1Ptr&,C|
|00003ac0| 68 6b 50 6f 73 26 0d 64 | 69 6d 20 63 4c 65 6e 31 |hkPos&.d|im cLen1|
|00003ad0| 26 2c 63 4c 65 6e 32 26 | 0d 27 0d 43 68 6b 50 6f |&,cLen2&|.'.ChkPo|
|00003ae0| 73 26 20 3d 20 2d 28 68 | 31 26 20 3c 3e 20 68 32 |s& = -(h|1& <> h2|
|00003af0| 26 29 27 4d 61 74 63 68 | 20 69 66 20 62 6f 74 68 |&)'Match| if both|
|00003b00| 20 6e 69 6c 20 6f 72 20 | 73 61 6d 65 20 68 61 6e | nil or |same han|
|00003b10| 64 6c 65 0d 27 0d 6c 6f | 6e 67 20 69 66 20 43 68 |dle.'.lo|ng if Ch|
|00003b20| 6b 50 6f 73 26 0d 6c 6f | 6e 67 20 69 66 20 68 31 |kPos&.lo|ng if h1|
|00003b30| 26 0d 6c 6f 6e 67 20 69 | 66 20 68 32 26 0d 27 0d |&.long i|f h2&.'.|
|00003b40| 63 4c 65 6e 31 26 20 3d | 20 66 6e 20 67 65 74 68 |cLen1& =| fn geth|
|00003b50| 61 6e 64 6c 65 73 69 7a | 65 28 68 31 26 29 0d 63 |andlesiz|e(h1&).c|
|00003b60| 4c 65 6e 32 26 20 3d 20 | 66 6e 20 67 65 74 68 61 |Len2& = |fn getha|
|00003b70| 6e 64 6c 65 73 69 7a 65 | 28 68 32 26 29 0d 63 31 |ndlesize|(h2&).c1|
|00003b80| 50 74 72 26 20 3d 20 5b | 68 31 26 5d 0d 63 32 50 |Ptr& = [|h1&].c2P|
|00003b90| 74 72 26 20 3d 20 5b 68 | 32 26 5d 0d 69 66 20 63 |tr& = [h|2&].if c|
|00003ba0| 4c 65 6e 32 26 20 3c 20 | 63 31 50 74 72 26 20 74 |Len2& < |c1Ptr& t|
|00003bb0| 68 65 6e 20 65 31 50 74 | 72 26 3d 63 31 50 74 72 |hen e1Pt|r&=c1Ptr|
|00003bc0| 26 2b 63 4c 65 6e 32 26 | 20 65 6c 73 65 20 65 31 |&+cLen2&| else e1|
|00003bd0| 50 74 72 26 3d 63 31 50 | 74 72 26 2b 63 4c 65 6e |Ptr&=c1P|tr&+cLen|
|00003be0| 31 26 0d 27 0d 77 68 69 | 6c 65 20 63 31 50 74 72 |1&.'.whi|le c1Ptr|
|00003bf0| 26 20 3c 20 65 31 50 74 | 72 26 0d 69 66 20 63 31 |& < e1Pt|r&.if c1|
|00003c00| 50 74 72 26 2e 6e 69 6c | 60 60 20 3c 3e 20 63 32 |Ptr&.nil|`` <> c2|
|00003c10| 50 74 72 26 2e 6e 69 6c | 60 60 20 74 68 65 6e 20 |Ptr&.nil|`` then |
|00003c20| 65 78 69 74 20 77 68 69 | 6c 65 0d 69 6e 63 28 63 |exit whi|le.inc(c|
|00003c30| 31 50 74 72 26 29 0d 69 | 6e 63 28 63 32 50 74 72 |1Ptr&).i|nc(c2Ptr|
|00003c40| 26 29 0d 77 65 6e 64 0d | 27 0d 43 68 6b 50 6f 73 |&).wend.|'.ChkPos|
|00003c50| 26 20 3d 20 28 63 31 50 | 74 72 26 2d 5b 68 31 26 |& = (c1P|tr&-[h1&|
|00003c60| 5d 29 2b 31 27 6f 66 66 | 73 65 74 2b 31 20 6f 66 |])+1'off|set+1 of|
|00003c70| 20 6d 69 73 73 6d 61 74 | 63 68 0d 27 0d 6c 6f 6e | missmat|ch.'.lon|
|00003c80| 67 20 69 66 20 63 31 50 | 74 72 26 20 3d 20 65 31 |g if c1P|tr& = e1|
|00003c90| 50 74 72 26 0d 6c 6f 6e | 67 20 69 66 20 63 4c 65 |Ptr&.lon|g if cLe|
|00003ca0| 6e 31 26 20 3c 3d 20 63 | 4c 65 6e 32 26 0d 6c 6f |n1& <= c|Len2&.lo|
|00003cb0| 6e 67 20 69 66 20 63 4c | 65 6e 31 26 20 3c 20 63 |ng if cL|en1& < c|
|00003cc0| 4c 65 6e 32 26 0d 43 68 | 6b 50 6f 73 26 20 3d 20 |Len2&.Ch|kPos& = |
|00003cd0| 2d 43 68 6b 50 6f 73 26 | 27 6f 66 66 73 65 74 2b |-ChkPos&|'offset+|
|00003ce0| 31 20 6f 66 20 6d 69 73 | 73 6d 61 74 63 68 0d 78 |1 of mis|smatch.x|
|00003cf0| 65 6c 73 65 0d 43 68 6b | 50 6f 73 26 20 3d 20 30 |else.Chk|Pos& = 0|
|00003d00| 27 31 30 30 25 20 6d 61 | 74 63 68 69 6e 67 20 62 |'100% ma|tching b|
|00003d10| 79 74 65 73 0d 65 6e 64 | 20 69 66 0d 65 6e 64 20 |ytes.end| if.end |
|00003d20| 69 66 0d 78 65 6c 73 65 | 0d 69 66 20 63 31 50 74 |if.xelse|.if c1Pt|
|00003d30| 72 26 2e 6e 69 6c 60 60 | 20 3c 20 63 32 50 74 72 |r&.nil``| < c2Ptr|
|00003d40| 26 2e 6e 69 6c 60 60 20 | 74 68 65 6e 20 43 68 6b |&.nil`` |then Chk|
|00003d50| 50 6f 73 26 20 3d 20 2d | 43 68 6b 50 6f 73 26 0d |Pos& = -|ChkPos&.|
|00003d60| 65 6e 64 20 69 66 0d 27 | 0d 65 6e 64 20 69 66 0d |end if.'|.end if.|
|00003d70| 78 65 6c 73 65 0d 43 68 | 6b 50 6f 73 26 3d 2d 31 |xelse.Ch|kPos&=-1|
|00003d80| 0d 65 6e 64 20 69 66 0d | 65 6e 64 20 69 66 0d 27 |.end if.|end if.'|
|00003d90| 0d 65 6e 64 20 66 6e 20 | 3d 20 43 68 6b 50 6f 73 |.end fn |= ChkPos|
|00003da0| 26 0d 27 20 20 20 2a 2a | 2a 20 47 6c 75 65 20 43 |&.' **|* Glue C|
|00003db0| 6f 64 65 20 66 6f 72 20 | 43 6f 6e 74 61 69 6e 65 |ode for |Containe|
|00003dc0| 72 20 56 61 72 73 20 2a | 2a 2a 0d 6c 6f 63 61 6c |r Vars *|**.local|
|00003dd0| 20 66 6e 20 46 42 43 6f | 6d 70 61 72 65 43 6f 6e | fn FBCo|mpareCon|
|00003de0| 74 61 69 6e 65 72 73 28 | 40 43 74 6e 72 31 26 2c |tainers(|@Ctnr1&,|
|00003df0| 40 43 74 6e 72 32 26 29 | 0d 65 6e 64 20 66 6e 20 |@Ctnr2&)|.end fn |
|00003e00| 3d 20 66 6e 20 46 42 43 | 6f 6d 70 61 72 65 48 61 |= fn FBC|ompareHa|
|00003e10| 6e 64 6c 65 73 28 43 74 | 6e 72 31 26 2e 6e 69 6c |ndles(Ct|nr1&.nil|
|00003e20| 26 2c 43 74 6e 72 32 26 | 2e 6e 69 6c 26 29 0d 2f |&,Ctnr2&|.nil&)./|
|00003e30| 2f 0d 2f 2f 20 20 63 6f | 6e 74 61 69 6e 65 72 20 |/.// co|ntainer |
|00003e40| 3d 20 45 44 49 54 24 28 | 65 66 4e 75 6d 26 2c 73 |= EDIT$(|efNum&,s|
|00003e50| 65 6c 73 74 61 72 74 2c | 73 65 6c 65 6e 64 29 0d |elstart,|selend).|
|00003e60| 2f 2f 0d 43 4f 4d 50 49 | 4c 45 20 4c 4f 4e 47 20 |//.COMPI|LE LONG |
|00003e70| 49 46 20 4e 44 45 46 20 | 5f 44 65 66 61 75 6c 74 |IF NDEF |_Default|
|00003e80| 52 75 6e 74 69 6d 65 2f | 2f 2d 2d 2d 2d 2d 2d 2d |Runtime/|/-------|
|00003e90| 20 4f 6e 6c 79 20 69 6e | 20 44 65 66 61 75 6c 74 | Only in| Default|
|00003ea0| 20 72 75 6e 74 69 6d 65 | 20 43 6f 64 65 20 2d 2d | runtime| Code --|
|00003eb0| 2d 2d 2d 2d 2d 2d 2f 2f | 0d 27 0d 4c 4f 43 41 4c |------//|.'.LOCAL|
|00003ec0| 0d 44 49 4d 20 65 66 4c | 65 6e 26 2c 74 65 48 6e |.DIM efL|en&,teHn|
|00003ed0| 64 6c 26 0d 6c 6f 63 61 | 6c 20 66 6e 20 46 42 47 |dl&.loca|l fn FBG|
|00003ee0| 65 74 45 64 69 74 52 61 | 6e 67 65 43 74 6e 72 28 |etEditRa|ngeCtnr(|
|00003ef0| 65 66 4e 75 6d 26 2c 74 | 68 65 53 74 61 72 74 26 |efNum&,t|heStart&|
|00003f00| 2c 74 68 65 45 6e 64 26 | 29 0d 74 65 48 6e 64 6c |,theEnd&|).teHndl|
|00003f10| 26 20 3d 20 54 45 48 41 | 4e 44 4c 45 28 65 66 4e |& = TEHA|NDLE(efN|
|00003f20| 75 6d 26 29 0d 6c 6f 6e | 67 20 69 66 20 74 65 48 |um&).lon|g if teH|
|00003f30| 6e 64 6c 26 0d 6c 6f 6e | 67 20 69 66 20 74 68 65 |ndl&.lon|g if the|
|00003f40| 45 6e 64 26 20 3c 20 30 | 0d 74 68 65 53 74 61 72 |End& < 0|.theStar|
|00003f50| 74 26 20 3d 20 74 65 48 | 6e 64 6c 26 2e 2e 74 65 |t& = teH|ndl&..te|
|00003f60| 53 65 6c 53 74 61 72 74 | 25 0d 74 68 65 45 6e 64 |SelStart|%.theEnd|
|00003f70| 26 20 20 20 3d 20 74 65 | 48 6e 64 6c 26 2e 2e 74 |& = te|Hndl&..t|
|00003f80| 65 53 65 6c 45 6e 64 25 | 0d 78 65 6c 73 65 0d 65 |eSelEnd%|.xelse.e|
|00003f90| 66 4c 65 6e 26 20 3d 20 | 74 65 48 6e 64 6c 26 2e |fLen& = |teHndl&.|
|00003fa0| 2e 74 65 4c 65 6e 67 74 | 68 25 0d 69 66 20 74 68 |.teLengt|h%.if th|
|00003fb0| 65 45 6e 64 26 20 20 20 | 3e 20 65 66 4c 65 6e 26 |eEnd& |> efLen&|
|00003fc0| 20 20 74 68 65 6e 20 74 | 68 65 45 6e 64 26 20 20 | then t|heEnd& |
|00003fd0| 20 3d 20 65 66 4c 65 6e | 26 0d 69 66 20 74 68 65 | = efLen|&.if the|
|00003fe0| 53 74 61 72 74 26 20 3c | 20 30 20 20 20 20 20 20 |Start& <| 0 |
|00003ff0| 20 74 68 65 6e 20 74 68 | 65 53 74 61 72 74 26 20 | then th|eStart& |
|00004000| 3d 20 30 0d 69 66 20 74 | 68 65 53 74 61 72 74 26 |= 0.if t|heStart&|
|00004010| 20 3e 20 74 68 65 45 6e | 64 26 20 74 68 65 6e 20 | > theEn|d& then |
|00004020| 74 68 65 53 74 61 72 74 | 26 20 3d 20 74 68 65 45 |theStart|& = theE|
|00004030| 6e 64 26 0d 65 6e 64 20 | 69 66 0d 26 40 67 46 42 |nd&.end |if.&@gFB|
|00004040| 54 65 6d 70 43 6f 6e 74 | 61 69 6e 65 72 2c 66 6e |TempCont|ainer,fn|
|00004050| 20 6e 65 77 68 61 6e 64 | 6c 65 28 74 68 65 45 6e | newhand|le(theEn|
|00004060| 64 26 2d 74 68 65 53 74 | 61 72 74 26 29 0d 66 6e |d&-theSt|art&).fn|
|00004070| 20 46 42 43 74 6e 72 43 | 68 65 63 6b 4d 65 6d 45 | FBCtnrC|heckMemE|
|00004080| 72 72 28 30 2c 22 69 6e | 20 46 42 47 65 74 45 64 |rr(0,"in| FBGetEd|
|00004090| 69 74 52 61 6e 67 65 43 | 74 6e 72 22 29 0d 62 6c |itRangeC|tnr").bl|
|000040a0| 6f 63 6b 6d 6f 76 65 20 | 5b 74 65 48 6e 64 6c 26 |ockmove |[teHndl&|
|000040b0| 2e 2e 74 65 54 65 78 74 | 48 26 5d 2b 74 68 65 53 |..teText|H&]+theS|
|000040c0| 74 61 72 74 26 2c 5b 5b | 40 67 46 42 54 65 6d 70 |tart&,[[|@gFBTemp|
|000040d0| 43 6f 6e 74 61 69 6e 65 | 72 5d 5d 2c 74 68 65 45 |Containe|r]],theE|
|000040e0| 6e 64 26 2d 74 68 65 53 | 74 61 72 74 26 0d 78 65 |nd&-theS|tart&.xe|
|000040f0| 6c 73 65 0d 64 65 66 20 | 64 69 73 70 6f 73 65 68 |lse.def |disposeh|
|00004100| 28 67 46 42 54 65 6d 70 | 43 6f 6e 74 61 69 6e 65 |(gFBTemp|Containe|
|00004110| 72 29 0d 65 6e 64 20 69 | 66 0d 45 4e 44 20 46 4e |r).end i|f.END FN|
|00004120| 20 3d 20 40 20 67 46 42 | 54 65 6d 70 43 6f 6e 74 | = @ gFB|TempCont|
|00004130| 61 69 6e 65 72 0d 2f 2f | 0d 2f 2f 20 20 63 6f 6e |ainer.//|.// con|
|00004140| 74 61 69 6e 65 72 20 3d | 20 45 44 49 54 24 28 65 |tainer =| EDIT$(e|
|00004150| 66 4e 75 6d 26 2c 73 65 | 6c 73 74 61 72 74 2c 73 |fNum&,se|lstart,s|
|00004160| 65 6c 65 6e 64 29 0d 2f | 2f 0d 52 55 4e 54 49 4d |elend)./|/.RUNTIM|
|00004170| 45 20 46 42 47 65 74 45 | 64 69 74 52 61 6e 67 65 |E FBGetE|ditRange|
|00004180| 43 74 6e 72 28 65 66 4e | 75 6d 26 2c 74 68 65 53 |Ctnr(efN|um&,theS|
|00004190| 74 61 72 74 26 2c 74 68 | 65 45 6e 64 26 29 0d 66 |tart&,th|eEnd&).f|
|000041a0| 6e 20 46 42 47 65 74 45 | 64 69 74 52 61 6e 67 65 |n FBGetE|ditRange|
|000041b0| 43 74 6e 72 28 65 66 4e | 75 6d 26 2c 74 68 65 53 |Ctnr(efN|um&,theS|
|000041c0| 74 61 72 74 26 2c 74 68 | 65 45 6e 64 26 29 0d 45 |tart&,th|eEnd&).E|
|000041d0| 4e 44 20 46 4e 20 3d 20 | 40 20 67 46 42 54 65 6d |ND FN = |@ gFBTem|
|000041e0| 70 43 6f 6e 74 61 69 6e | 65 72 0d 2f 2f 0d 2f 2f |pContain|er.//.//|
|000041f0| 20 20 63 6f 6e 74 61 69 | 6e 65 72 20 3d 20 45 44 | contai|ner = ED|
|00004200| 49 54 24 28 65 66 4e 75 | 6d 26 2c 6c 69 6e 65 29 |IT$(efNu|m&,line)|
|00004210| 0d 2f 2f 0d 4c 4f 43 41 | 4c 0d 64 69 6d 20 74 68 |.//.LOCA|L.dim th|
|00004220| 65 53 65 6c 26 3b 30 2c | 73 65 6c 53 74 61 72 74 |eSel&;0,|selStart|
|00004230| 25 2c 73 65 6c 45 6e 64 | 25 0d 52 55 4e 54 49 4d |%,selEnd|%.RUNTIM|
|00004240| 45 20 46 42 47 65 74 45 | 64 69 74 4c 69 6e 65 43 |E FBGetE|ditLineC|
|00004250| 74 6e 72 28 65 66 4e 75 | 6d 26 2c 74 68 65 4c 69 |tnr(efNu|m&,theLi|
|00004260| 6e 65 26 29 0d 74 68 65 | 53 65 6c 26 20 3d 20 66 |ne&).the|Sel& = f|
|00004270| 6e 20 46 42 4c 69 6e 65 | 54 6f 53 65 6c 65 63 74 |n FBLine|ToSelect|
|00004280| 69 6f 6e 28 65 66 4e 75 | 6d 26 2c 74 68 65 4c 69 |ion(efNu|m&,theLi|
|00004290| 6e 65 26 29 0d 66 6e 20 | 46 42 47 65 74 45 64 69 |ne&).fn |FBGetEdi|
|000042a0| 74 52 61 6e 67 65 43 74 | 6e 72 28 65 66 4e 75 6d |tRangeCt|nr(efNum|
|000042b0| 26 2c 73 65 6c 53 74 61 | 72 74 25 2c 73 65 6c 45 |&,selSta|rt%,selE|
|000042c0| 6e 64 25 29 0d 45 4e 44 | 20 46 4e 20 3d 20 40 20 |nd%).END| FN = @ |
|000042d0| 67 46 42 54 65 6d 70 43 | 6f 6e 74 61 69 6e 65 72 |gFBTempC|ontainer|
|000042e0| 0d 2f 2f 0d 2f 2f 20 20 | 63 6f 6e 74 61 69 6e 65 |.//.// |containe|
|000042f0| 72 20 3d 20 45 44 49 54 | 24 28 65 66 4e 75 6d 26 |r = EDIT|$(efNum&|
|00004300| 29 0d 2f 2f 0d 52 55 4e | 54 49 4d 45 20 46 42 47 |).//.RUN|TIME FBG|
|00004310| 65 74 45 64 69 74 54 65 | 78 74 43 74 6e 72 28 65 |etEditTe|xtCtnr(e|
|00004320| 66 4e 75 6d 26 29 0d 66 | 6e 20 46 42 47 65 74 45 |fNum&).f|n FBGetE|
|00004330| 64 69 74 52 61 6e 67 65 | 43 74 6e 72 28 65 66 4e |ditRange|Ctnr(efN|
|00004340| 75 6d 26 2c 30 2c 33 32 | 37 36 37 29 0d 45 4e 44 |um&,0,32|767).END|
|00004350| 20 46 4e 20 3d 20 40 20 | 67 46 42 54 65 6d 70 43 | FN = @ |gFBTempC|
|00004360| 6f 6e 74 61 69 6e 65 72 | 0d 27 0d 63 6f 6d 70 69 |ontainer|.'.compi|
|00004370| 6c 65 20 65 6e 64 20 69 | 66 0d 0d 00 00 00 00 00 |le end i|f.......|
|00004380| 00 00 01 00 00 00 01 12 | 00 00 00 12 00 00 00 61 |........|.......a|
|00004390| 39 20 50 6f 69 6e 74 00 | 00 00 00 08 31 30 20 50 |9 Point.|....10 P|
|000043a0| 6f 69 6e 74 00 00 00 00 | 08 31 31 20 50 6f 69 6e |oint....|.11 Poin|
|000043b0| 14 53 75 62 73 20 43 6f | 6e 74 61 69 6e 65 72 73 |.Subs Co|ntainers|
|000043c0| 2e 49 6e 63 6c 74 73 72 | 73 6c 64 65 72 73 73 72 |.Incltsr|slderssr|
|000043d0| 02 38 50 61 72 74 53 49 | 54 21 00 00 00 00 00 00 |.8PartSI|T!......|
|000043e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000043f0| 00 00 b3 b3 9e f0 00 00 | 00 00 00 00 01 73 74 79 |........|.....sty|
|00004400| 6c 65 05 50 6c 61 69 6e | 00 00 00 00 01 2d 00 00 |le.Plain|.....-..|
|00004410| 00 00 04 42 6f 6c 64 00 | 00 00 01 06 49 74 61 6c |...Bold.|....Ital|
|00004420| 69 63 00 00 00 02 09 55 | 6e 64 65 72 6c 69 6e 65 |ic.....U|nderline|
|00004430| 00 00 00 04 07 4f 75 74 | 6c 69 6e 65 00 00 00 08 |.....Out|line....|
|00004440| 06 53 68 61 64 6f 77 00 | 00 00 10 01 2d 00 00 00 |.Shadow.|....-...|
|00004450| 00 08 43 6f 6e 64 65 6e | 73 65 00 00 00 20 06 45 |..Conden|se... .E|
|00004460| 78 74 65 6e 64 00 00 00 | 40 01 2d 00 00 00 40 08 |xtend...|@.-...@.|
|00004470| 41 4c 4c 20 43 41 50 53 | 00 00 00 00 09 57 6f 72 |ALL CAPS|.....Wor|
|00004480| 00 00 00 02 01 7e 00 00 | 00 08 00 60 01 46 02 f8 |.....~..|...`.F..|
|00004490| 03 d1 00 00 01 00 00 00 | 01 12 00 00 00 12 00 00 |........|........|
|000044a0| 00 61 07 77 68 c4 03 9e | 00 00 00 1c 00 46 00 01 |.a.wh...|.....F..|
|000044b0| 52 45 4d 3e 00 00 00 12 | 77 50 4f 53 00 00 00 1e |REM>....|wPOS....|
|000044c0| 03 e8 00 00 00 00 00 00 | 07 77 2a fc 03 e8 00 0b |........|.w*.....|
|000044d0| 00 00 00 06 07 77 29 b8 | 0a 52 45 4d 20 49 6e 64 |.....w).|.REM Ind|
|000044e0| 65 6e 74 0f 57 69 6e 64 | 6f 77 20 50 6f 73 69 74 |ent.Wind|ow Posit|
|000044f0| 69 6f 6e 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |ion.....|........|
+--------+-------------------------+-------------------------+--------+--------+